]> git.openstreetmap.org Git - nominatim.git/blobdiff - test/bdd/api/search/queries.feature
Merge remote-tracking branch 'upstream/master'
[nominatim.git] / test / bdd / api / search / queries.feature
index c9b33701759f63292e0884deb8400cdf6e7c5839..2767f87cfd40fc84bb74005983be0fbd066b6d2a 100644 (file)
@@ -52,13 +52,69 @@ Feature: Search queries
          | way |
 
     Scenario: Search with class-type feature
          | way |
 
     Scenario: Search with class-type feature
-        When sending jsonv2 search query "Hotel California"
+        When sending jsonv2 search query "Hotel in California"
         Then results contain
           | place_rank |
           | 30 |
 
         Then results contain
           | place_rank |
           | 30 |
 
+    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 |
+
+    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
+
     # https://trac.openstreetmap.org/ticket/5094
     # https://trac.openstreetmap.org/ticket/5094
-    @Fail
     Scenario: housenumbers are ordered by complete match first
         When sending json search query "6395 geminis, montevideo" with address
         Then result addresses contain
     Scenario: housenumbers are ordered by complete match first
         When sending json search query "6395 geminis, montevideo" with address
         Then result addresses contain