Then results contain
| place_rank |
| 30 |
+
+ # https://trac.openstreetmap.org/ticket/5094
+ Scenario: housenumbers are ordered by complete match first
+ When sending json search query "6395 geminis, montevideo" with address
+ Then result addresses contain
+ | ID | house_number |
+ | 0 | 6395 |
+ | 1 | 6395 BIS |
+
--- /dev/null
+@APIDB
+Feature: Structured search queries
+ Testing correctness of results with
+ structured queries
+
+ Scenario: Country only
+ When sending json search query "" with address
+ | country |
+ | Liechtenstein |
+ Then address of result 0 is
+ | type | value |
+ | country | Liechtenstein |
+ | country_code | li |
+
+ Scenario: Postcode only
+ When sending json search query "" with address
+ | postalcode |
+ | 22547 |
+ Then results contain
+ | type |
+ | postcode |
+ And result addresses contain
+ | postcode |
+ | 22547 |
+
+ Scenario: Street, postcode and country
+ When sending xml search query "" with address
+ | street | postalcode | country |
+ | Old Palace Road | GU2 7UP | United Kingdom |
+ Then result header contains
+ | attr | value |
+ | querystring | Old Palace Road, GU2 7UP, United Kingdom |
+
+ Scenario: gihub #176
+ When sending json search query "" with address
+ | city |
+ | Mercedes |
+ Then at least 1 result is returned
def website_search_request(context, fmt, query, addr):
env = BASE_SERVER_ENV
- params = { 'q' : query }
+ params = {}
+ if query:
+ params['q'] = query
if fmt is not None:
params['format'] = fmt.strip()
if addr is not None: