World worldMock = mock(World.class);
Warzone zoneMock = mock(Warzone.class);
when(zoneMock.getTeams()).thenReturn(new ArrayList<Team>());
when(zoneMock.getMonuments()).thenReturn(new ArrayList<Monument>());
ZoneVolume volume = new ZoneVolume("test", worldMock, zoneMock);
Location se = new Location(worldMock, 64, 64, -64);
// Act
Location existingCorner1 = new Location(worldMock, -32, 32, -32); // ne
volume.setCornerOne(existingCorner1); // corner 1 already set
Location existingCorner2 = new Location(worldMock, 32, 96, 32); // sw
volume.setCornerTwo(existingCorner2); // corner 2 already set
volume.setSoutheast(se);
// Assert
// first corner should move along z but not along x or y
Location movedOne = new Location(worldMock, -32, 32, -64);
assertEquals(movedOne, volume.getCornerOne());
// second corner should move along x but not along y or z
Location movedTwo = new Location(worldMock, 64, 96, 32);
assertEquals(movedTwo, volume.getCornerTwo());
}