@Test
public void testGet() {

  // Test 1: null argument throws invalid argument exception
  try {
    map.get(bpid, null);
    fail("Expected exception not thrown");
  } catch (IllegalArgumentException expected) { }
  
  // Test 2: successful lookup based on block
  assertNotNull(map.get(bpid, block));
  
  // Test 3: Lookup failure - generation stamp mismatch 
  Block b = new Block(block);
  b.setGenerationStamp(0);
  assertNull(map.get(bpid, b));
  
  // Test 4: Lookup failure - blockID mismatch
  b.setGenerationStamp(block.getGenerationStamp());
  b.setBlockId(0);
  assertNull(map.get(bpid, b));
  
  // Test 5: successful lookup based on block ID
  assertNotNull(map.get(bpid, block.getBlockId()));
  
  // Test 6: failed lookup for invalid block ID
  assertNull(map.get(bpid, 0));
}