def __init__(self, request): self.request = request if "geom" in self.request.params: geoms = self.request.params["geom"] self.valid_request = True geom = geojson.loads(geoms, object_hook=geojson.GeoJSON.to_instance) if geom.type not in ["MultiLineString", "LineString"]: self.valid_request = False Raster.__init__(self, request)
def test_raster(self): from decimal import Decimal from pyramid.testing import DummyRequest from pyramid.httpexceptions import HTTPNotFound from c2cgeoportal.views.raster import Raster request = DummyRequest() request.registry.settings = { "raster": { "dem1": { "file": "c2cgeoportal/tests/data/dem.shp", "round": 0.1 }, "dem2": { "file": "c2cgeoportal/tests/data/dem.shp", "round": 1 }, "dem3": { "file": "c2cgeoportal/tests/data/dem.shp" } } } raster = Raster(request) request.params['lon'] = '565000' request.params['lat'] = '218000' result = raster.raster() self.assertEqual(result['dem1'], None) self.assertEqual(result['dem2'], None) self.assertEqual(result['dem3'], None) request.params['lon'] = '548000' request.params['lat'] = '216000' result = raster.raster() self.assertAlmostEqual(result['dem1'], Decimal('1168.9')) self.assertAlmostEqual(result['dem2'], Decimal('1169')) self.assertAlmostEqual(result['dem3'], Decimal('1168.85998535')) request.params['layers'] = 'dem2' result = raster.raster() self.assertFalse('dem1' in result) self.assertFalse('dem3' in result) self.assertAlmostEqual(result['dem2'], Decimal('1169')) # test wrong layer name request.params['layers'] = 'wrong' self.assertRaises(HTTPNotFound, raster.raster)
def test_raster(self): from decimal import Decimal from pyramid.testing import DummyRequest from pyramid.httpexceptions import HTTPNotFound from c2cgeoportal.views.raster import Raster request = DummyRequest() request.registry.settings = { "raster": { "dem1": { "file": "/src/tests/data/dem.shp", "round": 0.1 }, "dem2": { "file": "/src/tests/data/dem.shp", "round": 1 }, "dem3": { "file": "/src/tests/data/dem.shp" } } } raster = Raster(request) request.params["lon"] = "565000" request.params["lat"] = "218000" result = raster.raster() self.assertEqual(result["dem1"], None) self.assertEqual(result["dem2"], None) self.assertEqual(result["dem3"], None) request.params["lon"] = "548000" request.params["lat"] = "216000" result = raster.raster() self.assertAlmostEqual(result["dem1"], Decimal("1168.9")) self.assertAlmostEqual(result["dem2"], Decimal("1169")) self.assertAlmostEqual(result["dem3"], Decimal("1168.85998535")) request.params["layers"] = "dem2" result = raster.raster() self.assertFalse("dem1" in result) self.assertFalse("dem3" in result) self.assertAlmostEqual(result["dem2"], Decimal("1169")) # test wrong layer name request.params["layers"] = "wrong" self.assertRaises(HTTPNotFound, raster.raster)
def test_raster(self): from decimal import Decimal from pyramid.testing import DummyRequest from pyramid.httpexceptions import HTTPNotFound from c2cgeoportal.views.raster import Raster request = DummyRequest() request.registry.settings = { "raster": { "dem1": {"file": "c2cgeoportal/tests/data/dem.shp", "round": 0.1}, "dem2": {"file": "c2cgeoportal/tests/data/dem.shp", "round": 1}, "dem3": {"file": "c2cgeoportal/tests/data/dem.shp"} } } raster = Raster(request) request.params["lon"] = "565000" request.params["lat"] = "218000" result = raster.raster() self.assertEqual(result["dem1"], None) self.assertEqual(result["dem2"], None) self.assertEqual(result["dem3"], None) request.params["lon"] = "548000" request.params["lat"] = "216000" result = raster.raster() self.assertAlmostEqual(result["dem1"], Decimal("1168.9")) self.assertAlmostEqual(result["dem2"], Decimal("1169")) self.assertAlmostEqual(result["dem3"], Decimal("1168.85998535")) request.params["layers"] = "dem2" result = raster.raster() self.assertFalse("dem1" in result) self.assertFalse("dem3" in result) self.assertAlmostEqual(result["dem2"], Decimal("1169")) # test wrong layer name request.params["layers"] = "wrong" self.assertRaises(HTTPNotFound, raster.raster)
def test_raster(self): from decimal import Decimal from pyramid.testing import DummyRequest from pyramid.httpexceptions import HTTPNotFound from c2cgeoportal.views.raster import Raster request = DummyRequest() request.registry.settings = { "raster": { "dem1": {"file": "c2cgeoportal/tests/data/dem.shp", "round": 0.1}, "dem2": {"file": "c2cgeoportal/tests/data/dem.shp", "round": 1}, "dem3": {"file": "c2cgeoportal/tests/data/dem.shp"} } } raster = Raster(request) request.params['lon'] = '565000' request.params['lat'] = '218000' result = raster.raster() self.assertEqual(result['dem1'], None) self.assertEqual(result['dem2'], None) self.assertEqual(result['dem3'], None) request.params['lon'] = '548000' request.params['lat'] = '216000' result = raster.raster() self.assertAlmostEqual(result['dem1'], Decimal('1168.9')) self.assertAlmostEqual(result['dem2'], Decimal('1169')) self.assertAlmostEqual(result['dem3'], Decimal('1168.85998535')) request.params['layers'] = 'dem2' result = raster.raster() self.assertFalse('dem1' in result) self.assertFalse('dem3' in result) self.assertAlmostEqual(result['dem2'], Decimal('1169')) # test wrong layer name request.params['layers'] = 'wrong' self.assertRaises(HTTPNotFound, raster.raster)
def __init__(self, request): self.request = request request.response.cache_control = "no-cache" Raster.__init__(self, request)
def __init__(self, request): self.request = request Raster.__init__(self, request)