Nominatim/test/bdd/api/search/queries.feature

125 lines
4.2 KiB
Gherkin
Raw Normal View History

@APIDB
Feature: Search queries
Generic search result correctness
Scenario: House number search for non-street address
When sending json search query "2 Steinwald, Austria" with address
| accept-language |
| en |
Then address of result 0 is
| type | value |
| house_number | 2 |
| hamlet | Steinwald |
| postcode | 6811 |
| country | Austria |
| country_code | at |
Scenario: House number interpolation even
When sending json search query "Schellingstr 86, Hamburg" with address
| accept-language |
| de |
Then address of result 0 is
| type | value |
| house_number | 86 |
| road | Schellingstraße |
| suburb | Eilbek |
| postcode | 22089 |
| city_district | Wandsbek |
| state | Hamburg |
| country | Deutschland |
| country_code | de |
Scenario: House number interpolation odd
When sending json search query "Schellingstr 73, Hamburg" with address
| accept-language |
| de |
Then address of result 0 is
| type | value |
| house_number | 73 |
| road | Schellingstraße |
| suburb | Eilbek |
| postcode | 22089 |
| city_district | Wandsbek |
| state | Hamburg |
| country | Deutschland |
| country_code | de |
@Tiger
Scenario: TIGER house number
When sending json search query "323 22nd Street Southwest, Huron"
Then results contain
| osm_type |
| way |
Scenario: Search with class-type feature
When sending jsonv2 search query "Hotel in California"
Then results contain
| place_rank |
| 30 |
2016-12-21 22:28:27 +03:00
Scenario: Search with specific amenity
When sending json search query "[restaurant] Vaduz" with address
Then result addresses contain
| country |
| Liechtenstein |
And results contain
| class | type |
| amenity | restaurant |
Scenario: Search with key-value amenity
When sending json search query "[shop=hifi] hamburg"
Then results contain
| class | type |
| shop | hifi |
Scenario: With multiple amenity search only the first is used
When sending json search query "[shop=hifi] [church] hamburg"
Then results contain
| class | type |
| shop | hifi |
Scenario: With multiple amenity search only the first is used
When sending json search query "[church] [restaurant] hamburg"
Then results contain
| class | type |
| amenity | place_of_worship |
Scenario: POI search near given coordinate
When sending json search query "restaurant near 47.16712,9.51100"
Then results contain
| class | type |
| amenity | restaurant |
Scenario: Arbitrary key/value search near given coordinate
When sending json search query "[man_made=mast] 47.15739,9.61264"
Then results contain
| class | type |
| man_made | mast |
2017-10-03 00:09:45 +03:00
Scenario: Arbitrary key/value search near a road
When sending json search query "[leisure=table_soccer_table] immenbusch"
Then results contain
| class | type |
| leisure | table_soccer_table |
Scenario: Ignore other country codes in structured search with country
When sending json search query ""
| city | country |
| li | de |
Then exactly 0 results are returned
Scenario: Ignore country searches when query is restricted to countries
When sending json search query "de"
| countrycodes |
| li |
Then exactly 0 results are returned
2016-12-21 22:28:27 +03:00
# 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 |