Changed create_wrmap to the new json definition. The test for parse_googlemap passes...
[philipp/winterrodeln/wrpylib.git] / tests / test_wrmwmarkup.py
index 152212b468adbc9450b7989813e32a392a503141..77005dbc1fb712ca8be3ea78e541308702f30a25 100644 (file)
@@ -72,17 +72,17 @@ def test_parse_googlemap():
     47.112408,11.271119
     </googlemap>
     '''
-    attributes, json = wrpylib.wrmwmarkup.parse_googlemap(wikitext)
-    assert attributes['lon'] == 11.272337
-    assert attributes['lat'] == 47.113291
-    assert attributes['zoom'] == 15
-    assert json['features'][0]['properties']['type'] == 'carpark'
+    json = wrpylib.wrmwmarkup.parse_googlemap(wikitext)
+    assert json['properties']['lon'] == 11.272337
+    assert json['properties']['lat'] == 47.113291
+    assert json['properties']['zoom'] == 15
+    assert json['features'][0]['properties']['type'] == 'parkplatz'
     assert json['features'][0]['properties']['name'] == 'Erster Parkplatz'
     assert json['features'][0]['geometry']['coordinates'] == [11.266026, 47.114958]
-    assert json['features'][1]['properties']['type'] == 'inn'
+    assert json['features'][1]['properties']['type'] == 'gasthaus'
     assert json['features'][1]['properties']['name'] == u'Alt Bärnbad (Gasthaus)'
     assert json['features'][1]['geometry']['coordinates'] == [11.266262, 47.114715]
-    assert json['features'][2]['properties']['type'] == 'sledrun'
+    assert json['features'][2]['properties']['type'] == 'rodelbahn'
     assert json['features'][2]['geometry']['coordinates'] == [
         [11.266262, 47.114715],
         [11.268381, 47.114135],
@@ -104,29 +104,78 @@ def test_parse_wrmap():
     </rodelbahn>
     </wrmap>
     '''
-    attributes, json = wrpylib.wrmwmarkup.parse_wrmap(wikitext)
-    assert attributes['lon'] == 11.21408895
-    assert attributes['lat'] == 47.2417134
-    assert attributes['zoom'] == 14
-    assert attributes['width'] == 700
-    assert attributes['height'] == 400
-    assert json['features'][0]['properties']['type'] == 'inn'
+    json = wrpylib.wrmwmarkup.parse_wrmap(wikitext)
+    assert json['properties']['lon'] == 11.21408895
+    assert json['properties']['lat'] == 47.2417134
+    assert json['properties']['zoom'] == 14
+    assert json['properties']['width'] == 700
+    assert json['properties']['height'] == 400
+    assert json['features'][0]['properties']['type'] == 'gasthaus'
     assert json['features'][0]['properties']['name'] == u'Rosskogelhütte'
     assert json['features'][0]['properties']['wiki'] == u'Rosskogelhütte'
     assert json['features'][0]['geometry']['coordinates'] == [11.190454, 47.240689]
-    assert json['features'][1]['properties']['type'] == 'carpark'
+    assert json['features'][1]['properties']['type'] == 'parkplatz'
     assert json['features'][1]['geometry']['coordinates'] == [11.238971, 47.245789]
-    assert json['features'][2]['properties']['type'] == 'busstop'
+    assert json['features'][2]['properties']['type'] == 'haltestelle'
     assert json['features'][2]['properties']['name'] == u'Oberperfuss Rangger Köpfl Lift'
     assert json['features'][2]['geometry']['coordinates'] == [11.238283, 47.245711]
-    assert json['features'][3]['properties']['type'] == 'sledrun'
+    assert json['features'][3]['properties']['type'] == 'rodelbahn'
     assert json['features'][3]['geometry']['coordinates'] == [
-        [47.238587, 11.203360],
-        [47.244951, 11.230868],
-        [47.245470, 11.237853]]
-
+        [11.203360, 47.238587],
+        [11.230868, 47.244951],
+        [11.237853, 47.245470]]
 
 
 def test_create_wrmap():
-    pass
+    geojson = {
+        'type': 'FeatureCollection',
+        'features':
+            [{
+                'type': 'Feature',
+                'geometry': {
+                    'type': 'Point',
+                    'coordinates': [11.190454, 47.240689]},
+                'properties': {'type': 'inn', 'name': u'Rosskogelhütte', 'wiki': u'Rosskogelhütte'}
+            }, {
+                'type': 'Feature',
+                'geometry': {
+                    'type': 'Point',
+                    'coordinates': [11.238971, 47.245789]},
+                'properties': {'type': 'carpark'}
+            }, {
+                'type': 'Feature',
+                'geometry': {
+                    'type': 'Point',
+                    'coordinates': [11.238283, 47.245711]},
+                'properties': {'type': 'busstop', 'name': u'Oberperfuss Rangger Köpfl Lift'}
+            }, {
+                'type': 'Feature',
+                'geometry': {
+                    'type': 'LineString',
+                    'coordinates': [
+                        [11.203360, 47.238587],
+                        [11.230868, 47.244951],
+                        [11.237853, 47.245470]]},
+                'properties': {'type': 'sledrun'}
+            }],
+        'properties': {
+            'lon': 11.21408895,
+            'lat': 47.2417134,
+            'zoom': 14,
+            'width': 700,
+            'height': 400}
+    }
+
+    wikitext = wrpylib.wrmwmarkup.create_wrmap(geojson)
+    assert wikitext == u'''
+    <wrmap lat="47.2417134" lon="11.21408895" zoom="14" width="700" height="400">
+    <gasthaus name="Rosskogelhütte" wiki="Rosskogelhütte">47.240689 11.190454</gasthaus>
+    <parkplatz>47.245789 11.238971</parkplatz>
+    <haltestelle name="Oberperfuss Rangger Köpfl Lift">47.245711 11.238283</haltestelle>
+    <rodelbahn>
+        47.238587 11.203360
+        47.244951 11.230868
+        47.245470 11.237853
+    </rodelbahn>
+    </wrmap>'''