def test__filter_attrs(self): from papyrus.protocol import Protocol, create_attr_filter from geojson import Feature engine = self._get_engine() Session = self._get_session(engine) MappedClass = self._get_mapped_class() proto = Protocol(Session, MappedClass, "geom") feature = Feature(properties={'foo': 'foo', 'bar': 'bar', 'foobar': 'foobar'}) request = testing.DummyRequest(params={'attrs': 'bar,foo'}) feature = proto._filter_attrs(feature, request) self.assertEqual(feature.properties, {'foo': 'foo', 'bar': 'bar'})
def test__filter_attrs(self): from papyrus.protocol import Protocol from geojson import Feature engine = self._get_engine() Session = self._get_session(engine) MappedClass = self._get_mapped_class() proto = Protocol(Session, MappedClass, "geom") feature = Feature(properties={'foo': 'foo', 'bar': 'bar', 'foobar': 'foobar'}) request = testing.DummyRequest(params={'attrs': 'bar,foo'}) feature = proto._filter_attrs(feature, request) self.assertEqual(feature.properties, {'foo': 'foo', 'bar': 'bar'})
def test__filter_attrs_no_geom(self): from papyrus.protocol import Protocol, create_attr_filter from geojson import Feature from shapely.geometry import Point engine = self._get_engine() Session = self._get_session(engine) Session.bind = engine MappedClass = self._get_mapped_class() proto = Protocol(Session, MappedClass, "geom") feature = Feature(geometry=Point(1.0, 2.0)) request = testing.DummyRequest(params={'no_geom': 'true'}) feature = proto._filter_attrs(feature, request) self.assertEqual(feature.geometry, None)
def test__filter_attrs_no_geom(self): from papyrus.protocol import Protocol from geojson import Feature from shapely.geometry import Point engine = self._get_engine() Session = self._get_session(engine) Session.bind = engine MappedClass = self._get_mapped_class() proto = Protocol(Session, MappedClass, "geom") feature = Feature(geometry=Point(1.0, 2.0)) request = testing.DummyRequest(params={'no_geom': 'true'}) feature = proto._filter_attrs(feature, request) self.assertEqual(feature.geometry, None)