]> git.openstreetmap.org Git - nominatim.git/blobdiff - test/bdd/db/update/postcode.feature
Merge remote-tracking branch 'upstream/master'
[nominatim.git] / test / bdd / db / update / postcode.feature
index c2fb30ceb1b1ff479235a4041e4f4187f6e65d1f..393181012cd876259438538b7c809b7433390795 100644 (file)
@@ -38,13 +38,13 @@ Feature: Update of postcode
         Given the places
            | osm | class | type  | addr+postcode | addr+housenumber | geometry |
            | N34 | place | house | 01982         | 111              |country:de |
-           | N35 | place | house | 01982         | 5                |country:ch |
+           | N35 | place | house | 01982         | 5                |country:fr |
         When importing
         And marking for delete N34
         And updating postcodes
         Then location_postcode contains exactly
            | country | postcode | geometry |
-           | ch      | 01982    | country:ch |
+           | fr      | 01982    | country:fr |
         And there are word tokens for postcodes 01982
 
      Scenario: Updating a postcode is reflected in postcode table
@@ -102,3 +102,25 @@ Feature: Update of postcode
            | country | postcode | geometry |
            | de      | 01982    | country:de |
         And there are word tokens for postcodes 01982
+
+    Scenario: When a parent is deleted, the postcode gets a new parent
+        Given the grid with origin DE
+           | 1 |   | 3 | 4 |
+           |   | 9 |   |   |
+           | 2 |   | 5 | 6 |
+        Given the places
+           | osm | class    | type           | name  | admin | geometry    |
+           | R1  | boundary | administrative | Big   | 6     | (1,4,6,2,1) |
+           | R2  | boundary | administrative | Small | 6     | (1,3,5,2,1) |
+        Given the named places
+           | osm | class | type     | addr+postcode | geometry |
+           | N9  | place | postcode | 12345         | 9        |
+        When importing
+        And updating postcodes
+        Then location_postcode contains exactly
+           | country | postcode | geometry | parent_place_id |
+           | de      | 12345    | 9        | R2              |
+        When marking for delete R2
+        Then location_postcode contains exactly
+           | country | postcode | geometry | parent_place_id |
+           | de      | 12345    | 9        | R1              |