forked from mapnik/python-mapnik
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmemory_datasource_test.py
More file actions
37 lines (28 loc) · 898 Bytes
/
memory_datasource_test.py
File metadata and controls
37 lines (28 loc) · 898 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# encoding: utf8
from nose.tools import eq_
import mapnik
from .utilities import run_all
def test_add_feature():
md = mapnik.MemoryDatasource()
eq_(md.num_features(), 0)
context = mapnik.Context()
context.push('foo')
feature = mapnik.Feature(context, 1)
feature['foo'] = 'bar'
feature.geometry = mapnik.Geometry.from_wkt('POINT(2 3)')
md.add_feature(feature)
eq_(md.num_features(), 1)
featureset = md.features_at_point(mapnik.Coord(2, 3))
retrieved = []
for feat in featureset:
retrieved.append(feat)
eq_(len(retrieved), 1)
f = retrieved[0]
eq_(f['foo'], 'bar')
featureset = md.features_at_point(mapnik.Coord(20, 30))
retrieved = []
for feat in featureset:
retrieved.append(feat)
eq_(len(retrieved), 0)
if __name__ == "__main__":
exit(run_all(eval(x) for x in dir() if x.startswith("test_")))