X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/f6bfadaef61a50a4ef1808b8547cc0f2a3b32d9e..8b896f37f34cc53b151d71df3a7a6a7b7fc2b52f:/tests/features/api/search_params.feature?ds=sidebyside
diff --git a/tests/features/api/search_params.feature b/tests/features/api/search_params.feature
index 8a49c20d..de6bd53d 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,14 +29,18 @@ 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
+ Scenario: coordinate search with addressdetails
+ When sending json search query "51.193058013916,15.5245780944824" with address
+ Then result addresses contain
+ | village | country | country_code
+ | Kraszowice | Polska | pl
+
Scenario: Address details with unknown class types
When sending json search query "foobar, Essen" with address
Then results contain
@@ -71,7 +77,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 +90,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 +177,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
|