X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/f6bfadaef61a50a4ef1808b8547cc0f2a3b32d9e..421174ce0ca961b15ff31e4f27445aba922a7cf3:/tests/features/api/search_params.feature diff --git a/tests/features/api/search_params.feature b/tests/features/api/search_params.feature index 8a49c20d..5a1c4f81 100644 --- a/tests/features/api/search_params.feature +++ b/tests/features/api/search_params.feature @@ -8,6 +8,7 @@ Feature: Search queries And result 0 has attributes lat,lon,display_name And result 0 has attributes class,type,importance,icon And result 0 has not attributes address + And results contain valid boundingboxes Scenario: Simple JSON search When sending json search query "Vaduz" @@ -15,6 +16,7 @@ Feature: Search queries And result 0 has attributes osm_type,osm_id,boundingbox And result 0 has attributes lat,lon,display_name,importance And result 0 has not attributes address + And results contain valid boundingboxes Scenario: JSON search with addressdetails When sending json search query "Montevideo" with address @@ -27,11 +29,9 @@ Feature: Search queries Scenario: XML search with addressdetails When sending xml search query "Inuvik" with address - Then address of result 0 is + Then address of result 0 contains | type | value - | city | Inuvik | state | Northwest Territories - | postcode | X0E 0T0 | country | Canada | country_code | ca @@ -71,7 +71,7 @@ Feature: Search queries Then result addresses contain | ID | city | 0 | Chicago - + Scenario: No POI search with unbounded viewbox Given the request parameters | viewbox @@ -84,7 +84,7 @@ Feature: Search queries Scenario: bounded search remains within viewbox, even with no results Given the request parameters | bounded | viewbox - | 1 | -5.662003,43.54285,-5.6563282,43.5403125 + | 1 | 43.54285,-5.662003,43.5403125,-5.6563282 When sending json search query "restaurant" Then less than 1 result is returned @@ -171,3 +171,139 @@ Feature: Search queries Then results contain | ID | display_name | 0 | Everest.* + + Scenario Outline: Search with polygon threshold (json) + Given the request parameters + | polygon_geojson | polygon_threshold + | 1 | + When sending json search query "switzerland" + Then at least 1 result is returned + And result 0 has attributes geojson + + Examples: + | th + | -1 + | 0.0 + | 0.5 + | 999 + + Scenario Outline: Search with polygon threshold (xml) + Given the request parameters + | polygon_geojson | polygon_threshold + | 1 | + When sending xml search query "switzerland" + Then at least 1 result is returned + And result 0 has attributes geojson + + Examples: + | th + | -1 + | 0.0 + | 0.5 + | 999 + + Scenario Outline: Search with invalid polygon threshold (xml) + Given the request parameters + | polygon_geojson | polygon_threshold + | 1 | + When sending xml search query "switzerland" + Then a HTTP 400 is returned + + + Scenario Outline: Search with extratags + Given the request parameters + | extratags + | 1 + When sending search query "Hauptstr" + Then result 0 has attributes extratags + And result 1 has attributes extratags + + Examples: + | format + | xml + | json + | jsonv2 + + Scenario Outline: Search with namedetails + Given the request parameters + | namedetails + | 1 + When sending search query "Hauptstr" + Then result 0 has attributes namedetails + And result 1 has attributes namedetails + + Examples: + | format + | xml + | json + | jsonv2 + + + Scenario Outline: Search result with contains TEXT geometry + Given the request parameters + | polygon_text + | 1 + When sending search query "switzerland" + Then result 0 has attributes + + Examples: + | format | response_attribute + | xml | geotext + | json | geotext + | jsonv2 | geotext + + Scenario Outline: Search result contains polygon-as-points geometry + Given the request parameters + | polygon + | 1 + When sending search query "switzerland" + Then result 0 has attributes + + Examples: + | format | response_attribute + | xml | polygonpoints + | json | polygonpoints + | jsonv2 | polygonpoints + + + + Scenario Outline: Search result contains SVG geometry + Given the request parameters + | polygon_svg + | 1 + When sending search query "switzerland" + Then result 0 has attributes + + Examples: + | format | response_attribute + | xml | geosvg + | json | svg + | jsonv2 | svg + + + Scenario Outline: Search result contains KML geometry + Given the request parameters + | polygon_kml + | 1 + When sending search query "switzerland" + Then result 0 has attributes + + Examples: + | format | response_attribute + | xml | geokml + | json | geokml + | jsonv2 | geokml + + + Scenario Outline: Search result contains GEOJSON geometry + Given the request parameters + | polygon_geojson + | 1 + When sending search query "switzerland" + Then result 0 has attributes + + Examples: + | format | response_attribute + | xml | geojson + | json | geojson + | jsonv2 | geojson