public static LayerGroupInfoImpl mockGroup(String name, LayerInfo... layers) { LayerGroupInfoImpl lg = new LayerGroupInfoImpl(); lg.setId("id-" + name); lg.setName(name); lg.setLayers(Lists.newArrayList(layers)); lg.setBounds(new ReferencedEnvelope(-180, -90, 180, 90, DefaultGeographicCRS.WGS84)); return lg; }
public void testGridSubsetBoundsClippedToTargetCrsAreaOfValidity() throws Exception { CoordinateReferenceSystem nativeCrs = CRS.decode("EPSG:4326", true); ReferencedEnvelope nativeBounds = new ReferencedEnvelope(-180, 180, -90, 90, nativeCrs); layerGroup.setBounds(nativeBounds); defaults.getDefaultCachingGridSetIds().clear(); defaults.getDefaultCachingGridSetIds().add("EPSG:900913"); layerGroupInfoTileLayer = new GeoServerTileLayer(layerGroup, defaults, gridSetBroker); // force building and setting the bounds to the saved representation layerGroupInfoTileLayer.getGridSubsets(); XMLGridSubset savedSubset = layerGroupInfoTileLayer.getInfo().getGridSubsets().iterator() .next(); BoundingBox gridSubsetExtent = savedSubset.getExtent(); BoundingBox expected = gridSetBroker.WORLD_EPSG3857.getOriginalExtent(); // don't use equals(), it uses an equality threshold we want to avoid here double threshold = 1E-16; assertTrue("Expected " + expected + ", got " + gridSubsetExtent, expected.equals(gridSubsetExtent, threshold)); }
public void testGetGridSubsets() throws Exception { layerInfoTileLayer = new GeoServerTileLayer(layerInfo, defaults, gridSetBroker); Set<String> gridSubsets = layerInfoTileLayer.getGridSubsets(); assertNotNull(gridSubsets); assertEquals(2, gridSubsets.size()); Set<XMLGridSubset> subsets = layerInfoTileLayer.getInfo().getGridSubsets(); subsets.clear(); XMLGridSubset xmlGridSubset = new XMLGridSubset(); xmlGridSubset.setGridSetName("EPSG:900913"); subsets.add(xmlGridSubset); LegacyTileLayerInfoLoader.save(layerInfoTileLayer.getInfo(), layerInfo.getMetadata()); layerInfoTileLayer = new GeoServerTileLayer(layerInfo, defaults, gridSetBroker); gridSubsets = layerInfoTileLayer.getGridSubsets(); assertNotNull(gridSubsets); assertEquals(1, gridSubsets.size()); layerGroup.setBounds(layerInfo.getResource().getLatLonBoundingBox()); layerGroupInfoTileLayer = new GeoServerTileLayer(layerGroup, defaults, gridSetBroker); gridSubsets = layerGroupInfoTileLayer.getGridSubsets(); assertNotNull(gridSubsets); assertEquals(2, gridSubsets.size()); }