### Question:
PlatformGeometryBuilder implements GeometryBuilder { public List<Geometry> close() { List<Geometry> toRemove = New.list(); for (List<Geometry> geoms : myPublished.values()) { toRemove.addAll(geoms); } return toRemove; } PlatformGeometryBuilder(MapContext<? extends Viewer> mapManager); @Override Pair<List<Geometry>, List<Geometry>> buildGeometries(PlatformMetadata model, DataTypeInfo uavDataType,
            DataTypeInfo videoLayer); @Override boolean cachePublishedGeometries(); List<Geometry> close();  }### Answer:
@Test public void testClose() { EasyMockSupport support = new EasyMockSupport(); MapContext<? extends Viewer> mapManager = createMapManager(support); DataTypeInfo dataType = createDataType(support); DataTypeInfo videoLayer = support.createMock(DataTypeInfo.class); PlatformMetadata metadata = createMetadata(); support.replayAll(); PlatformGeometryBuilder builder = new PlatformGeometryBuilder(mapManager); Pair<List<Geometry>, List<Geometry>> addsAndRemoves = builder.buildGeometries(metadata, dataType, videoLayer); assertTrue(addsAndRemoves.getSecondObject().isEmpty()); List<Geometry> geometries = addsAndRemoves.getFirstObject(); List<PolygonMeshGeometry> meshes = getMeshes(geometries); List<PolylineGeometry> lines = getLines(geometries); Matrix4d expected = new Matrix4d(new double[] { -.0008035867145991338, -0.002768272986857213, -0.009575537220561378, 0, -0.0037781292850447104, -0.00880517522006317, 0.0028626261456000334, 0, -0.009223881368361542, 0.003847798593250691, -0.0003383171414083064, 0, -86.5819168, 34.6905037, 0, 1 }); assertMeshes(meshes, expected); assertLines(lines); List<Geometry> toRemove = builder.close(); assertEquals(geometries, toRemove); support.verifyAll(); }