@Test
 public void isInMemoryTest() {
   mInfo.addWorker(3, "HDD");
   Assert.assertFalse(mInfo.isInTier("MEM"));
   mInfo.addWorker(1, "MEM");
   Assert.assertTrue(mInfo.isInTier("MEM"));
 }
 @Test
 public void getNumLocationsTest() {
   mInfo.addWorker(1, "MEM");
   mInfo.addWorker(2, "MEM");
   mInfo.addWorker(3, "HDD");
   Assert.assertEquals(3, mInfo.getNumLocations());
 }
 @Test
 public void addWorkerTest() {
   Assert.assertEquals(0, mInfo.getWorkers().size());
   mInfo.addWorker(1, "MEM");
   Assert.assertTrue(mInfo.getWorkers().contains(1L));
   mInfo.addWorker(1, "MEM");
   Assert.assertEquals(1, mInfo.getWorkers().size());
 }
  @Test
  public void getBlockLocationsTest() {
    mInfo.addWorker(3, "HDD");
    mInfo.addWorker(1, "MEM");
    mInfo.addWorker(2, "MEM");

    List<MasterBlockLocation> locations = mInfo.getBlockLocations();
    Assert.assertEquals(3, mInfo.getNumLocations());
    // mem in the top of the list
    Assert.assertEquals(1, locations.get(0).getWorkerId());
    Assert.assertEquals(2, locations.get(1).getWorkerId());
    Assert.assertEquals(3, locations.get(2).getWorkerId());
  }
  @Test
  public void removeWorkerTest() {
    mInfo.addWorker(1, "MEM");
    Assert.assertTrue(mInfo.getWorkers().contains(1L));
    mInfo.removeWorker(1);
    Assert.assertEquals(0, mInfo.getWorkers().size());

    // remove nonexiting worker.
    mInfo.removeWorker(1);
    Assert.assertEquals(0, mInfo.getWorkers().size());
  }