def test_get_map_with_res_range(self): res_range = resolution_range(1000, 10) self.source = WMSSource(self.client, res_range=res_range) self.locker = TileLocker(tmp_lock_dir, 10, "id") self.tile_mgr = TileManager(self.grid, self.file_cache, [self.source], 'png', meta_size=[2, 2], meta_buffer=0, image_opts=self.image_opts, locker=self.locker) self.layer = CacheMapLayer(self.tile_mgr, image_opts=default_image_opts) try: result = self.layer.get_map( MapQuery( (-20037508.34, -20037508.34, 20037508.34, 20037508.34), (500, 500), SRS(900913), 'png')) except BlankImage: pass else: assert False, 'expected BlankImage exception' eq_(self.file_cache.stored_tiles, set()) result = self.layer.get_map( MapQuery((0, 0, 10000, 10000), (50, 50), SRS(900913), 'png')) eq_( self.file_cache.stored_tiles, set([(512, 257, 10), (513, 256, 10), (512, 256, 10), (513, 257, 10)])) eq_(result.size, (50, 50))
def test_get_map_with_res_range(self, mock_file_cache, mock_wms_client, tile_locker): grid = TileGrid(SRS(4326), bbox=[-180, -90, 180, 90]) res_range = resolution_range(1000, 10) source = WMSSource(mock_wms_client, res_range=res_range) image_opts = ImageOptions(resampling='nearest') tile_mgr = TileManager(grid, mock_file_cache, [source], 'png', meta_size=[2, 2], meta_buffer=0, image_opts=image_opts, locker=tile_locker) layer = CacheMapLayer(tile_mgr, image_opts=default_image_opts) with pytest.raises(BlankImage): result = layer.get_map( MapQuery( (-20037508.34, -20037508.34, 20037508.34, 20037508.34), (500, 500), SRS(900913), 'png')) assert mock_file_cache.stored_tiles == set() result = layer.get_map( MapQuery((0, 0, 10000, 10000), (50, 50), SRS(900913), 'png')) assert mock_file_cache.stored_tiles == \ set([(512, 257, 10), (513, 256, 10), (512, 256, 10), (513, 257, 10)]) assert result.size == (50, 50)
def test_get_map_with_res_range(self): res_range = resolution_range(1000, 10) self.source = WMSSource(self.client, res_range=res_range) self.locker = TileLocker(tmp_lock_dir, 10, "id") self.tile_mgr = TileManager( self.grid, self.file_cache, [self.source], "png", meta_size=[2, 2], meta_buffer=0, image_opts=self.image_opts, locker=self.locker, ) self.layer = CacheMapLayer(self.tile_mgr, image_opts=default_image_opts) try: result = self.layer.get_map( MapQuery((-20037508.34, -20037508.34, 20037508.34, 20037508.34), (500, 500), SRS(900913), "png") ) except BlankImage: pass else: assert False, "expected BlankImage exception" eq_(self.file_cache.stored_tiles, set()) result = self.layer.get_map(MapQuery((0, 0, 10000, 10000), (50, 50), SRS(900913), "png")) eq_(self.file_cache.stored_tiles, set([(512, 257, 10), (513, 256, 10), (512, 256, 10), (513, 257, 10)])) eq_(result.size, (50, 50))
def test_eq(self): assert resolution_range(None, None) == resolution_range(None, None) assert resolution_range(None, 100) == resolution_range(None, 100.0) assert resolution_range(None, 100) != resolution_range(None, 100.1) assert resolution_range(1000, 100) == resolution_range(1000, 100) assert resolution_range(1000, 100) == resolution_range(1000.0, 100) assert resolution_range(1000, 100) != resolution_range(1000.1, 100)
def test_wrong_order_scale(self): resolution_range(min_scale=100, max_scale=10)
def test_wrong_order_res(self): resolution_range(min_res=10, max_res=100)
def check_invalid_combination(self, min_res, max_res, max_scale, min_scale): resolution_range(min_res, max_res, max_scale, min_scale)
def test_from_scale(self): res_range = resolution_range(max_scale=1e6, min_scale=1e3) assert_almost_equal(res_range.min_res, 280) assert_almost_equal(res_range.max_res, 0.28)
def test_none(self): res_range = resolution_range(None, None) assert res_range == None
def test_none(self): res_range = resolution_range(None, None) assert res_range.contains([0, 0, 100000, 100000], (1, 1), SRS(900913)) assert res_range.contains([0, 0, 100000, 100000], (1000000, 100000), SRS(900913))