Skip to content

Commit

Permalink
around query syntax XML
Browse files Browse the repository at this point in the history
  • Loading branch information
Gustry committed Sep 29, 2015
1 parent 164a60c commit 72127cc
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 4 deletions.
4 changes: 3 additions & 1 deletion core/query_factory.py
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,8 @@ def get_pretty_xml(query):

@staticmethod
def replace_template(query):
query = re.sub(
r' area_coords="(.*?)"', r' {{geocodeCoords:\1}}', query)
query = re.sub(
r' area="(.*?)"', r' {{geocodeArea:\1}}', query)
query = query.replace(' bbox="custom"', ' {{bbox}}')
Expand Down Expand Up @@ -150,7 +152,7 @@ def generate_xml(self):
query += u'<area-query from="area_%s" />' % i

elif self.__nominatim and self.__is_around:
query += u'<around area="%s" radius="%s" />' % \
query += u'<around area_coords="%s" radius="%s" />' % \
(nominatim[i], self.__distance)

elif self.__bbox:
Expand Down
10 changes: 7 additions & 3 deletions core/test/test_query_factory.py
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,10 @@ def test_replace_template(self):
expected = ' {{geocodeArea:paris}}'
self.assertEqual(QueryFactory.replace_template(query), expected)

query = ' area_coords="paris,france"'
expected = ' {{geocodeCoords:paris,france}}'
self.assertEqual(QueryFactory.replace_template(query), expected)

query = ' bbox="custom"'
expected = ' {{bbox}}'
self.assertEqual(QueryFactory.replace_template(query), expected)
Expand Down Expand Up @@ -149,11 +153,11 @@ def test_generate_xml(self):
nominatim='a')
expected = u'<osm-script output="xml" timeout="25"><union>' \
u'<query type="node"><has-kv k="foo" />' \
u'<around area="a" radius="1000" /></query>' \
u'<around area_coords="a" radius="1000" /></query>' \
u'<query type="way"><has-kv k="foo" />' \
u'<around area="a" radius="1000" /></query>' \
u'<around area_coords="a" radius="1000" /></query>' \
u'<query type="relation"><has-kv k="foo" />' \
u'<around area="a" radius="1000" /></query></union>' \
u'<around area_coords="a" radius="1000" /></query></union>' \
u'<union><item /><recurse type="down"/></union>' \
u'<print mode="meta" /></osm-script>'
self.assertEqual(query.generate_xml(), expected)
Expand Down

0 comments on commit 72127cc

Please sign in to comment.