2016-12-19 23:38:42 +03:00
|
|
|
|
@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 |
|
|
|
|
|
|
2017-10-04 01:05:34 +03:00
|
|
|
|
Scenario: With missing housenumber search falls back to road
|
|
|
|
|
When sending json search query "342 rocha, santa lucia" with address
|
|
|
|
|
Then address of result 0 is
|
|
|
|
|
| type | value |
|
|
|
|
|
| road | Rocha |
|
|
|
|
|
| city | Santa Lucía |
|
|
|
|
|
| state | Canelones |
|
|
|
|
|
| postcode | 90700 |
|
|
|
|
|
| country | Uruguay |
|
|
|
|
|
| country_code | uy |
|
|
|
|
|
|
2016-12-19 23:38:42 +03:00
|
|
|
|
@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
|
2017-06-05 22:33:50 +03:00
|
|
|
|
When sending jsonv2 search query "Hotel in California"
|
2016-12-19 23:38:42 +03:00
|
|
|
|
Then results contain
|
|
|
|
|
| place_rank |
|
|
|
|
|
| 30 |
|
2016-12-21 22:28:27 +03:00
|
|
|
|
|
2017-09-18 00:30:08 +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 |
|
|
|
|
|
|
2017-09-18 23:07:08 +03:00
|
|
|
|
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 |
|
|
|
|
|
|
2017-09-19 01:07:11 +03:00
|
|
|
|
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
|
2017-10-04 01:05:34 +03:00
|
|
|
|
When sending json search query "[man_made=mast] 47.15739° N 9.61264° E"
|
|
|
|
|
Then results contain
|
|
|
|
|
| class | type |
|
|
|
|
|
| man_made | mast |
|
|
|
|
|
|
|
|
|
|
Scenario: Arbitrary key/value search near given coordinate and named place
|
|
|
|
|
When sending json search query "[man_made=mast] amerlugalpe 47° 9′ 26″ N 9° 36′ 45″ E"
|
2017-09-19 01:07:11 +03:00
|
|
|
|
Then results contain
|
|
|
|
|
| class | type |
|
|
|
|
|
| man_made | mast |
|
|
|
|
|
|
2017-10-04 01:05:34 +03:00
|
|
|
|
Scenario: Name search near given coordinate
|
|
|
|
|
When sending json search query "amerlugalpe, N 47.15739° E 9.61264°"
|
|
|
|
|
Then exactly 1 result is returned
|
|
|
|
|
|
|
|
|
|
Scenario: Name search near given coordinate without result
|
|
|
|
|
When sending json search query "amerlugalpe, N 47 15 7 W 9 61 26"
|
|
|
|
|
Then exactly 0 results are returned
|
|
|
|
|
|
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 |
|
|
|
|
|
|