X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/86d90bc46005c00f2367ad759804f528adc4c6a5..421174ce0ca961b15ff31e4f27445aba922a7cf3:/tests/features/api/search_params.feature?ds=inline
diff --git a/tests/features/api/search_params.feature b/tests/features/api/search_params.feature
index 5b765f12..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,9 +29,8 @@ 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
- | town | Inuvik
| state | Northwest Territories
| country | Canada
| country_code | ca
@@ -41,7 +42,7 @@ Feature: Search queries
| 0 | leisure | hackerspace
And result addresses contain
| ID | address29
- | 0 | foobar
+ | 0 | Chaospott
And address of result 0 does not contain leisure,hackerspace
Scenario: Disabling deduplication
@@ -70,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
@@ -83,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
@@ -170,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
|