]> git.openstreetmap.org Git - nominatim.git/blobdiff - test/bdd/db/update/linked_places.feature
Merge remote-tracking branch 'upstream/master'
[nominatim.git] / test / bdd / db / update / linked_places.feature
index 3b34039d367322451b200ca1c0ecc711aea654ec..d6370ebbe731c136780c755e1423c70e5584d413 100644 (file)
@@ -44,8 +44,8 @@ Feature: Updates of linked places
          | dups |
          | 1    |
         Then results contain
-         | osm_type |
-         | R |
+         | osm |
+         | R1 |
         When updating places
          | osm | class    | type           | name   | admin | geometry |
          | R1  | boundary | administrative | foobar | 8     | (10,11,12,13,10) |
@@ -56,8 +56,8 @@ Feature: Updates of linked places
          | dups |
          | 1    |
         Then results contain
-         | osm_type |
-         | N |
+         | osm |
+         | N1 |
 
     Scenario: Add linked place when linking relation is removed
         Given the 0.1 grid
@@ -75,8 +75,8 @@ Feature: Updates of linked places
          | dups |
          | 1    |
         Then results contain
-         | osm_type |
-         | R |
+         | osm |
+         | R1 |
         When marking for delete R1
         Then placex contains
          | object | linked_place_id |
@@ -85,8 +85,8 @@ Feature: Updates of linked places
          | dups |
          | 1    |
         Then results contain
-         | osm_type |
-         | N |
+         | osm |
+         | N1 |
 
     Scenario: Remove linked place when linking relation is added
         Given the 0.1 grid
@@ -101,8 +101,8 @@ Feature: Updates of linked places
          | dups |
          | 1    |
         Then results contain
-         | osm_type |
-         | N |
+         | osm |
+         | N1 |
         When updating places
          | osm | class    | type           | name   | admin | geometry |
          | R1  | boundary | administrative | foo    | 8     | (10,11,12,13,10) |
@@ -113,8 +113,8 @@ Feature: Updates of linked places
          | dups |
          | 1    |
         Then results contain
-         | osm_type |
-         | R |
+         | osm |
+         | R1 |
 
     Scenario: Remove linked place when linking relation is renamed
         Given the 0.1 grid
@@ -132,8 +132,8 @@ Feature: Updates of linked places
          | dups |
          | 1    |
         Then results contain
-         | osm_type |
-         | N |
+         | osm |
+         | N1 |
         When updating places
          | osm | class    | type           | name   | admin | geometry |
          | R1  | boundary | administrative | foo    | 8     | (10,11,12,13,10) |
@@ -144,8 +144,8 @@ Feature: Updates of linked places
          | dups |
          | 1    |
         Then results contain
-         | osm_type |
-         | R |
+         | osm |
+         | R1 |
 
     Scenario: Update linking relation when linkee name is updated
         Given the 0.1 grid
@@ -157,17 +157,17 @@ Feature: Updates of linked places
          | R1  | boundary | administrative | rel  | 8     | (10,11,12,13,10) |
         And the places
          | osm | class    | type        | name+name:de |
-         | N3  | place    | city        | pnt          |
+         | N3  | place    | city        | greeny       |
         And the relations
          | id | members  |
          | 1  | N3:label |
         When importing
         Then placex contains
          | object | linked_place_id | name+_place_name:de |
-         | R1     | -               | pnt  |
+         | R1     | -               | greeny  |
         And placex contains
          | object | linked_place_id | name+name:de |
-         | N3     | R1              | pnt  |
+         | N3     | R1              | greeny  |
         When updating places
          | osm | class    | type        | name+name:de |
          | N3  | place    | city        | newname      |
@@ -188,18 +188,18 @@ Feature: Updates of linked places
          | R1  | boundary | administrative | rel  | 8     | (10,11,12,13,10) |
         And the places
          | osm | class    | type           | name |
-         | N3  | place    | city           | pnt  |
+         | N3  | place    | city           | greeny  |
         And the relations
          | id | members  |
          | 1  | N3:label |
         When importing
         Then placex contains
          | object | linked_place_id | name+_place_name | name+name |
-         | R1     | -               | pnt              | rel       |
+         | R1     | -               | greeny              | rel       |
         And placex contains
          | object | linked_place_id | name+name |
-         | N3     | R1              | pnt  |
-        When sending search query "pnt"
+         | N3     | R1              | greeny  |
+        When sending search query "greeny"
         Then results contain
           | osm |
           | R1  |
@@ -212,7 +212,7 @@ Feature: Updates of linked places
         And placex contains
          | object | linked_place_id | name+_place_name:de | name+name |
          | R1     | -               | depnt               | rel       |
-        When sending search query "pnt"
+        When sending search query "greeny"
         Then exactly 0 results are returned
 
     Scenario: Updating linkee extratags keeps linker's extratags
@@ -258,7 +258,7 @@ Feature: Updates of linked places
         When marking for delete N1
         Then placex contains
             | object | extratags |
-            | R1     |  |
+            | R1     | - |
 
     Scenario: Update linked_place info when linkee type changes
         Given the 0.1 grid
@@ -307,3 +307,35 @@ Feature: Updates of linked places
             | object | linked_place_id | rank_address |
             | N1     | R1              | 16           |
             | R1     | -               | 16           |
+
+
+    Scenario: Invalidate surrounding place nodes when place type changes
+        Given the grid
+            | 1 |   |   | 2 |
+            |   | 8 | 9 |   |
+            | 4 |   |   | 3 |
+        And the places
+            | osm | class    | type           | name | admin | geometry    |
+            | R1  | boundary | administrative | foo  | 8     | (1,2,3,4,1) |
+        And the places
+            | osm | class | type | name | geometry |
+            | N1  | place | town | foo  | 9        |
+            | N2  | place | city | bar  | 8        |
+        And the relations
+         | id | members  |
+         | 1  | N1:label |
+        When importing
+        Then placex contains
+            | object | linked_place_id | rank_address |
+            | N1     | R1              | 16           |
+            | R1     | -               | 16           |
+            | N2     | -               | 18           |
+
+        When updating places
+            | osm | class | type   | name | geometry |
+            | N1  | place | suburb | foo  | 9        |
+        Then placex contains
+            | object | linked_place_id | rank_address |
+            | N1     | R1              | 20           |
+            | R1     | -               | 20           |
+            | N2     | -               | 16           |