]> git.openstreetmap.org Git - nominatim.git/blobdiff - test/bdd/api/search/simple.feature
Merge pull request #3542 from lonvia/remove-legacy-tokenizer
[nominatim.git] / test / bdd / api / search / simple.feature
index 2549495261fa8f578f898adac3a6231df2520267..655c639b5d244e8ae5b84a78dbfc68a8171968e2 100644 (file)
@@ -1,54 +1,50 @@
+@SQLITE
 @APIDB
 Feature: Simple Tests
     Simple tests for internal server errors and response format.
 
     Scenario Outline: Testing different parameters
 @APIDB
 Feature: Simple Tests
     Simple tests for internal server errors and response format.
 
     Scenario Outline: Testing different parameters
-        When sending search query "Hamburg"
+        When sending search query "Vaduz"
           | param       | value   |
           | <parameter> | <value> |
         Then at least 1 result is returned
           | param       | value   |
           | <parameter> | <value> |
         Then at least 1 result is returned
-        When sending html search query "Hamburg"
+        When sending xml search query "Vaduz"
           | param       | value   |
           | <parameter> | <value> |
         Then at least 1 result is returned
           | param       | value   |
           | <parameter> | <value> |
         Then at least 1 result is returned
-        When sending xml search query "Hamburg"
+        When sending json search query "Vaduz"
           | param       | value   |
           | <parameter> | <value> |
         Then at least 1 result is returned
           | param       | value   |
           | <parameter> | <value> |
         Then at least 1 result is returned
-        When sending json search query "Hamburg"
+        When sending jsonv2 search query "Vaduz"
           | param       | value   |
           | <parameter> | <value> |
         Then at least 1 result is returned
           | param       | value   |
           | <parameter> | <value> |
         Then at least 1 result is returned
-        When sending jsonv2 search query "Hamburg"
+        When sending geojson search query "Vaduz"
+          | param       | value   |
+          | <parameter> | <value> |
+        Then at least 1 result is returned
+        When sending geocodejson search query "Vaduz"
           | param       | value   |
           | <parameter> | <value> |
         Then at least 1 result is returned
 
     Examples:
      | parameter        | value |
           | param       | value   |
           | <parameter> | <value> |
         Then at least 1 result is returned
 
     Examples:
      | parameter        | value |
-     | addressdetails   | 1 |
      | addressdetails   | 0 |
      | addressdetails   | 0 |
-     | polygon          | 1 |
-     | polygon          | 0 |
-     | polygon_text     | 1 |
      | polygon_text     | 0 |
      | polygon_text     | 0 |
-     | polygon_kml      | 1 |
      | polygon_kml      | 0 |
      | polygon_kml      | 0 |
-     | polygon_geojson  | 1 |
      | polygon_geojson  | 0 |
      | polygon_geojson  | 0 |
-     | polygon_svg      | 1 |
      | polygon_svg      | 0 |
      | accept-language  | de,en |
      | polygon_svg      | 0 |
      | accept-language  | de,en |
-     | countrycodes     | de |
+     | countrycodes     | li |
      | bounded          | 1 |
      | bounded          | 0 |
      | exclude_place_ids| 385252,1234515 |
      | limit            | 1000 |
      | dedupe           | 1 |
      | dedupe           | 0 |
      | bounded          | 1 |
      | bounded          | 0 |
      | exclude_place_ids| 385252,1234515 |
      | limit            | 1000 |
      | dedupe           | 1 |
      | dedupe           | 0 |
-     | extratags        | 1 |
      | extratags        | 0 |
      | extratags        | 0 |
-     | namedetails      | 1 |
      | namedetails      | 0 |
 
     Scenario: Search with invalid output format
      | namedetails      | 0 |
 
     Scenario: Search with invalid output format
@@ -59,15 +55,15 @@ Feature: Simple Tests
 
     Scenario Outline: Simple Searches
         When sending search query "<query>"
 
     Scenario Outline: Simple Searches
         When sending search query "<query>"
-        Then the result is valid html
-        When sending html search query "<query>"
-        Then the result is valid html
+        Then the result is valid json
         When sending xml search query "<query>"
         Then the result is valid xml
         When sending json search query "<query>"
         Then the result is valid json
         When sending jsonv2 search query "<query>"
         Then the result is valid json
         When sending xml search query "<query>"
         Then the result is valid xml
         When sending json search query "<query>"
         Then the result is valid json
         When sending jsonv2 search query "<query>"
         Then the result is valid json
+        When sending geojson search query "<query>"
+        Then the result is valid geojson
 
     Examples:
      | query |
 
     Examples:
      | query |
@@ -88,7 +84,6 @@ Feature: Simple Tests
         Then result header contains
           | attr        | value |
           | querystring | xnznxvcx |
         Then result header contains
           | attr        | value |
           | querystring | xnznxvcx |
-          | polygon     | false |
           | more_url    | .*q=xnznxvcx.*format=xml |
 
     Scenario: Empty XML search with special XML characters
           | more_url    | .*q=xnznxvcx.*format=xml |
 
     Scenario: Empty XML search with special XML characters
@@ -96,7 +91,6 @@ Feature: Simple Tests
         Then result header contains
           | attr        | value |
           | querystring | xfdghn&zxn"xvbyx<vxx>cssdex |
         Then result header contains
           | attr        | value |
           | querystring | xfdghn&zxn"xvbyx<vxx>cssdex |
-          | polygon     | false |
           | more_url    | .*q=xfdghn%26zxn%22xvbyx%3Cvxx%3Ecssdex.*format=xml |
 
     Scenario: Empty XML search with viewbox
           | more_url    | .*q=xfdghn%26zxn%22xvbyx%3Cvxx%3Ecssdex.*format=xml |
 
     Scenario: Empty XML search with viewbox
@@ -106,7 +100,6 @@ Feature: Simple Tests
         Then result header contains
           | attr        | value |
           | querystring | xnznxvcx |
         Then result header contains
           | attr        | value |
           | querystring | xnznxvcx |
-          | polygon     | false |
           | viewbox     | 12,33,77,45.13 |
 
     Scenario: Empty XML search with viewboxlbrt
           | viewbox     | 12,33,77,45.13 |
 
     Scenario: Empty XML search with viewboxlbrt
@@ -116,7 +109,6 @@ Feature: Simple Tests
         Then result header contains
           | attr        | value |
           | querystring | xnznxvcx |
         Then result header contains
           | attr        | value |
           | querystring | xnznxvcx |
-          | polygon     | false |
           | viewbox     | 12,34.13,77,45 |
 
     Scenario: Empty XML search with viewboxlbrt and viewbox
           | viewbox     | 12,34.13,77,45 |
 
     Scenario: Empty XML search with viewboxlbrt and viewbox
@@ -126,30 +118,9 @@ Feature: Simple Tests
         Then result header contains
           | attr        | value |
           | querystring | pub |
         Then result header contains
           | attr        | value |
           | querystring | pub |
-          | polygon     | false |
           | viewbox     | 12,33,77,45.13 |
 
           | viewbox     | 12,33,77,45.13 |
 
-    Scenario Outline: Empty XML search with polygon values
-        When sending xml search query "xnznxvcx"
-          | param   | value |
-          | polygon | <polyval> |
-        Then result header contains
-          | attr        | value |
-          | polygon     | <result> |
-
-    Examples:
-     | result | polyval |
-     | false  | 0 |
-     | true   | 1 |
-     | true   | True |
-     | true   | true |
-     | true   | false |
-     | true   | FALSE |
-     | true   | yes |
-     | true   | no |
-     | true   | '; delete from foobar; select ' |
-
-    Scenario: Empty XML search with exluded place ids
+    Scenario: Empty XML search with excluded place ids
         When sending xml search query "jghrleoxsbwjer"
           | exclude_place_ids |
           | 123,76,342565 |
         When sending xml search query "jghrleoxsbwjer"
           | exclude_place_ids |
           | 123,76,342565 |
@@ -157,7 +128,7 @@ Feature: Simple Tests
           | attr              | value |
           | exclude_place_ids | 123,76,342565 |
 
           | attr              | value |
           | exclude_place_ids | 123,76,342565 |
 
-    Scenario: Empty XML search with bad exluded place ids
+    Scenario: Empty XML search with bad excluded place ids
         When sending xml search query "jghrleoxsbwjer"
           | exclude_place_ids |
           | , |
         When sending xml search query "jghrleoxsbwjer"
           | exclude_place_ids |
           | , |
@@ -176,15 +147,12 @@ Feature: Simple Tests
      | foo     | foo |
      | FOO     | FOO |
      | __world | __world |
      | foo     | foo |
      | FOO     | FOO |
      | __world | __world |
-     | $me     | \$me |
-     | m1[4]   | m1\[4\] |
-     | d_r[$d] | d_r\[\$d\] |
 
     Scenario Outline: Wrapping of illegal jsonp search requests
         When sending json search query "Tokyo"
             | param        | value |
             |json_callback | <data> |
 
     Scenario Outline: Wrapping of illegal jsonp search requests
         When sending json search query "Tokyo"
             | param        | value |
             |json_callback | <data> |
-        Then a HTTP 400 is returned
+        Then a json user error is returned
 
     Examples:
       | data |
 
     Examples:
       | data |
@@ -202,18 +170,17 @@ Feature: Simple Tests
           | json_callback |
           | 234 |
         Then the result is valid xml
           | json_callback |
           | 234 |
         Then the result is valid xml
-        When sending html search query "Malibu"
-          | json_callback |
-          | 234 |
-        Then the result is valid html
 
 
-    Scenario: Empty JSON search
-        When sending json search query "YHlERzzx"
+    Scenario Outline: Empty search
+        When sending <format> search query "YHlERzzx"
         Then exactly 0 results are returned
 
         Then exactly 0 results are returned
 
-    Scenario: Empty JSONv2 search
-        When sending jsonv2 search query "Flubb XdfESSaZx"
-        Then exactly 0 results are returned
+    Examples:
+        | format |
+        | json |
+        | jsonv2 |
+        | geojson |
+        | geocodejson |
 
     Scenario: Search for non-existing coordinates
         When sending json search query "-21.0,-33.0"
 
     Scenario: Search for non-existing coordinates
         When sending json search query "-21.0,-33.0"
@@ -223,6 +190,19 @@ Feature: Simple Tests
         When sending xml search query "Vaduz"
           | countrycodes |
           | pl,1,,invalid,undefined,%3Cb%3E,bo,, |
         When sending xml search query "Vaduz"
           | countrycodes |
           | pl,1,,invalid,undefined,%3Cb%3E,bo,, |
-       Then result header contains
+        Then result header contains
           | attr     | value |
           | more_url | .*&countrycodes=pl%2Cbo&.* |
           | attr     | value |
           | more_url | .*&countrycodes=pl%2Cbo&.* |
+
+    Scenario Outline: Search debug output does not return errors
+        When sending debug search query "<query>"
+        Then a HTTP 200 is returned
+
+    Examples:
+        | query |
+        | Liechtenstein |
+        | Triesen |
+        | Pfarrkirche |
+        | Landstr 27 Steinort, Triesenberg, 9495 |
+        | 9497 |
+        | restaurant in triesen |