]> git.openstreetmap.org Git - nominatim.git/blobdiff - test/bdd/db/import/interpolation.feature
Merge remote-tracking branch 'upstream/master'
[nominatim.git] / test / bdd / db / import / interpolation.feature
index d7ac9a4f2d6fd5c563442116f2fa2ada091eec02..54d22962c5373cde05aad755c91d2c1fadc485cb 100644 (file)
@@ -16,23 +16,23 @@ Feature: Import of address interpolations
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
-          | 2     | 6   | 1 1, 1 1.001 |
+          | 4     | 4   | 1 1.0005 |
 
     Scenario: Backwards even two point interpolation line
         Given the places
           | osm | class | type   | housenr | geometry |
           | N1  | place | house  | 2       | 1 1 |
 
     Scenario: Backwards even two point interpolation line
         Given the places
           | osm | class | type   | housenr | geometry |
           | N1  | place | house  | 2       | 1 1 |
-          | N2  | place | house  | 6       | 1 1.001 |
+          | N2  | place | house  | 8       | 1 1.003 |
         And the places
           | osm | class | type   | addr+interpolation | geometry |
         And the places
           | osm | class | type   | addr+interpolation | geometry |
-          | W1  | place | houses | even    | 1 1.001, 1 1 |
+          | W1  | place | houses | even    | 1 1.003, 1 1 |
         And the ways
           | id | nodes |
           | 1  | 2,1 |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
         And the ways
           | id | nodes |
           | 1  | 2,1 |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
-          | 2     | 6   | 1 1, 1 1.001 |
+          | 4     | 6   | 1 1.001, 1 1.002 |
 
     Scenario: Simple odd two point interpolation
         Given the places
 
     Scenario: Simple odd two point interpolation
         Given the places
@@ -48,23 +48,23 @@ Feature: Import of address interpolations
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
-          | 1     | 11  | 1 1, 1 1.001 |
+          | 3     | 9  | 1 1.0002, 1 1.0008 |
 
     Scenario: Simple all two point interpolation
         Given the places
           | osm | class | type   | housenr | geometry |
           | N1  | place | house  | 1       | 1 1 |
 
     Scenario: Simple all two point interpolation
         Given the places
           | osm | class | type   | housenr | geometry |
           | N1  | place | house  | 1       | 1 1 |
-          | N2  | place | house  | 3       | 1 1.001 |
+          | N2  | place | house  | 4       | 1 1.003 |
         And the places
           | osm | class | type   | addr+interpolation | geometry |
         And the places
           | osm | class | type   | addr+interpolation | geometry |
-          | W1  | place | houses | all     | 1 1, 1 1.001 |
+          | W1  | place | houses | all     | 1 1, 1 1.003 |
         And the ways
           | id | nodes |
           | 1  | 1,2 |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
         And the ways
           | id | nodes |
           | 1  | 1,2 |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
-          | 1     | 3   | 1 1, 1 1.001 |
+          | 2     | 3   | 1 1.001, 1 1.002 |
 
     Scenario: Even two point interpolation line with intermediate empty node
         Given the places
 
     Scenario: Even two point interpolation line with intermediate empty node
         Given the places
@@ -80,7 +80,7 @@ Feature: Import of address interpolations
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
-          | 2     | 10  | 1 1, 1 1.001, 1.001 1.001 |
+          | 4     | 8   | 1 1.0005, 1 1.001, 1.0005 1.001 |
 
     Scenario: Even two point interpolation line with intermediate duplicated empty node
         Given the places
 
     Scenario: Even two point interpolation line with intermediate duplicated empty node
         Given the places
@@ -96,7 +96,7 @@ Feature: Import of address interpolations
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
-          | 2     | 10  | 1 1, 1 1.001, 1.001 1.001 |
+          | 4     | 8   | 1 1.0005, 1 1.001, 1.0005 1.001 |
 
     Scenario: Simple even three point interpolation line
         Given the places
 
     Scenario: Simple even three point interpolation line
         Given the places
@@ -113,8 +113,8 @@ Feature: Import of address interpolations
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
-          | 2     | 10  | 1 1, 1 1.001 |
-          | 10    | 14  | 1 1.001, 1.001 1.001 |
+          | 4     |  8  | 1 1.00025, 1 1.00075 |
+          | 12    | 12  | 1.0005 1.001 |
 
     Scenario: Simple even four point interpolation line
         Given the places
 
     Scenario: Simple even four point interpolation line
         Given the places
@@ -132,9 +132,9 @@ Feature: Import of address interpolations
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
-          | 2     | 10  | 1 1, 1 1.001 |
-          | 10    | 14  | 1 1.001, 1.001 1.001 |
-          | 14    | 18  | 1.001 1.001, 1.001 1.002 |
+          | 4     | 8   | 1 1.00025, 1 1.00075 |
+          | 12    | 12  | 1.0005 1.001 |
+          | 16    | 16  | 1.001 1.0015 |
 
     Scenario: Reverse simple even three point interpolation line
         Given the places
 
     Scenario: Reverse simple even three point interpolation line
         Given the places
@@ -151,8 +151,8 @@ Feature: Import of address interpolations
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
-          | 2     | 10  | 1 1, 1 1.001 |
-          | 10    | 14  | 1 1.001, 1.001 1.001 |
+          | 4     |  8  | 1 1.00025, 1 1.00075 |
+          | 12    | 12  | 1.0005 1.001 |
 
     Scenario: Even three point interpolation line with odd center point
         Given the places
 
     Scenario: Even three point interpolation line with odd center point
         Given the places
@@ -169,8 +169,7 @@ Feature: Import of address interpolations
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
-          | 2     | 7   | 1 1, 1 1.001 |
-          | 7     | 8   | 1 1.001, 1.001 1.001 |
+          | 4     | 6   | 1 1.0004, 1 1.0008 |
 
     Scenario: Interpolation line with self-intersecting way
         Given the places
 
     Scenario: Interpolation line with self-intersecting way
         Given the places
@@ -187,9 +186,9 @@ Feature: Import of address interpolations
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
-          | 2     | 6   | 0 0, 0 0.001 |
-          | 6     | 10  | 0 0.001, 0 0.002 |
-          | 6     | 10  | 0 0.001, 0 0.002 |
+          | 4     | 4   | 0 0.0005 |
+          | 8     | 8   | 0 0.0015 |
+          | 8     | 8   | 0 0.0015 |
 
     Scenario: Interpolation line with self-intersecting way II
         Given the places
 
     Scenario: Interpolation line with self-intersecting way II
         Given the places
@@ -205,7 +204,7 @@ Feature: Import of address interpolations
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
-          | 2     | 6   | 0 0, 0 0.001 |
+          | 4     | 4   | 0 0.0005 |
 
     Scenario: addr:street on interpolation way
         Given the scene parallel-road
 
     Scenario: addr:street on interpolation way
         Given the scene parallel-road
@@ -236,22 +235,18 @@ Feature: Import of address interpolations
           | N4     | W3 |
         Then W10 expands to interpolation
           | parent_place_id | start | end |
           | N4     | W3 |
         Then W10 expands to interpolation
           | parent_place_id | start | end |
-          | W2              | 2     | 6 |
+          | W2              | 4     | 4 |
         Then W11 expands to interpolation
           | parent_place_id | start | end |
         Then W11 expands to interpolation
           | parent_place_id | start | end |
-          | W3              | 12    | 16 |
-        When searching for "16 Cloud Street"
+          | W3              | 14    | 14 |
+        When sending search query "16 Cloud Street"
         Then results contain
          | ID | osm_type | osm_id |
          | 0  | N        | 4 |
         Then results contain
          | ID | osm_type | osm_id |
          | 0  | N        | 4 |
-        When searching for "14 Cloud Street"
+        When sending search query "14 Cloud Street"
         Then results contain
          | ID | osm_type | osm_id |
          | 0  | W        | 11 |
         Then results contain
          | ID | osm_type | osm_id |
          | 0  | W        | 11 |
-        When searching for "18 Cloud Street"
-        Then results contain
-         | ID | osm_type | osm_id |
-         | 0  | W        | 3 |
 
     Scenario: addr:street on housenumber way
         Given the scene parallel-road
 
     Scenario: addr:street on housenumber way
         Given the scene parallel-road
@@ -282,15 +277,15 @@ Feature: Import of address interpolations
           | N4     | W3 |
         Then W10 expands to interpolation
           | parent_place_id | start | end |
           | N4     | W3 |
         Then W10 expands to interpolation
           | parent_place_id | start | end |
-          | W2              | 2     | 6 |
+          | W2              | 4     | 4 |
         Then W11 expands to interpolation
           | parent_place_id | start | end |
         Then W11 expands to interpolation
           | parent_place_id | start | end |
-          | W3              | 12    | 16 |
-        When searching for "16 Cloud Street"
+          | W3              | 14    | 14 |
+        When sending search query "16 Cloud Street"
         Then results contain
          | ID | osm_type | osm_id |
          | 0  | N        | 4 |
         Then results contain
          | ID | osm_type | osm_id |
          | 0  | N        | 4 |
-        When searching for "14 Cloud Street"
+        When sending search query "14 Cloud Street"
         Then results contain
          | ID | osm_type | osm_id |
          | 0  | W        | 11 |
         Then results contain
          | ID | osm_type | osm_id |
          | 0  | W        | 11 |
@@ -310,8 +305,8 @@ Feature: Import of address interpolations
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
-          | 2     | 6   | 144.9629794 -37.7630755, 144.9630541 -37.7628174 |
-          | 6     | 10  | 144.9630541 -37.7628174, 144.9632341 -37.76163 |
+          | 4     | 4   | 144.963016 -37.762946 |
+          | 8     | 8   | 144.963144 -37.7622237 |
 
     Scenario: Place with missing address information
         Given the grid
 
     Scenario: Place with missing address information
         Given the grid
@@ -330,7 +325,7 @@ Feature: Import of address interpolations
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
         When importing
         Then W1 expands to interpolation
           | start | end | geometry |
-          | 23    | 29  | 1,2,3 |
+          | 25    | 27  | 0.000016 0,0.00002 0,0.000033 0 |
 
     Scenario: Ways without node entries are ignored
         Given the places
 
     Scenario: Ways without node entries are ignored
         Given the places
@@ -348,3 +343,22 @@ Feature: Import of address interpolations
         When importing
         Then W1 expands to no interpolation
 
         When importing
         Then W1 expands to no interpolation
 
+    Scenario: Two point interpolation starting at 0
+        Given the places
+          | osm | class | type   | housenr | geometry |
+          | N1  | place | house  | 0       | 1 1 |
+          | N2  | place | house  | 10      | 1 1.001 |
+        And the places
+          | osm | class | type   | addr+interpolation | geometry |
+          | W1  | place | houses | even     | 1 1, 1 1.001 |
+        And the ways
+          | id | nodes |
+          | 1  | 1,2 |
+        When importing
+        Then W1 expands to interpolation
+          | start | end | geometry |
+          | 2     | 8   | 1 1.0002, 1 1.0008 |
+        When sending jsonv2 reverse coordinates 1,1
+        Then results contain
+          | ID | osm_type | osm_id | type  | display_name |
+          | 0  | node     | 1      | house | 0 |