]> git.openstreetmap.org Git - nominatim.git/blobdiff - test/bdd/db/update/simple.feature
release 4.5.0.post7
[nominatim.git] / test / bdd / db / update / simple.feature
index 0833c90c9248427beca621182980751579c058cd..73abcd223972fd02cd7ea461b780357273ed1bc7 100644 (file)
@@ -3,9 +3,12 @@ Feature: Update of simple objects
     Testing simple updating functionality
 
     Scenario: Do delete small boundary features
+        Given the 1.0 grid
+          | 1 | 2 |
+          | 4 | 3 |
         Given the places
           | osm | class    | type           | admin | geometry |
-          | R1  | boundary | administrative | 3     | poly-area:1.0 |
+          | R1  | boundary | administrative | 3     | (1,2,3,4,1) |
         When importing
         Then placex contains
           | object | rank_search |
@@ -14,31 +17,40 @@ Feature: Update of simple objects
         Then placex has no entry for R1
 
     Scenario: Do not delete large boundary features
+        Given the 2.0 grid
+          | 1 | 2 |
+          | 4 | 3 |
         Given the places
           | osm | class    | type           | admin | geometry |
-          | R1  | boundary | administrative | 3     | poly-area:5.0 |
+          | R1  | boundary | administrative | 3     | (1,2,3,4,1) |
         When importing
         Then placex contains
           | object | rank_search |
           | R1     | 6 |
         When marking for delete R1
-        Then placex contains 
+        Then placex contains
           | object | rank_search |
           | R1     | 6 |
 
     Scenario: Do delete large features of low rank
+        Given the 2.0 grid
+          | 1 | 2 |
+          | 4 | 3 |
         Given the named places
-          | osm | class    | type          | geometry |
-          | W1  | place    | house         | poly-area:5.0 |
-          | R1  | boundary | national_park | poly-area:5.0 |
+          | osm | class    | type        | geometry |
+          | W1  | place    | house       | (1,2,3,4,1) |
+          | R1  | natural  | wood        | (1,2,3,4,1) |
+          | R2  | highway  | residential | (1,2,3,4,1) |
         When importing
         Then placex contains
           | object | rank_address |
           | R1     | 0 |
+          | R2     | 26 |
           | W1     | 30 |
-        When marking for delete R1,W1
+        When marking for delete R1,R2,W1
         Then placex has no entry for W1
         Then placex has no entry for R1
+        Then placex has no entry for R2
 
     Scenario: type mutation
         Given the places
@@ -58,14 +70,47 @@ Feature: Update of simple objects
     Scenario: remove postcode place when house number is added
         Given the places
           | osm | class | type     | postcode | geometry |
-          | N3  | place | postcode | 12345    | 1 -1 |
+          | N3  | place | postcode | 12345    | country:de |
         When importing
-        Then placex contains
-          | object | class | type |
-          | N3     | place | postcode |
+        Then placex has no entry for N3
         When updating places
           | osm | class | type  | postcode | housenr | geometry |
-          | N3  | place | house | 12345    | 13      | 1 -1 |
+          | N3  | place | house | 12345    | 13      | country:de |
         Then placex contains
           | object | class | type |
           | N3     | place | house |
+
+    Scenario: remove boundary when changing from polygon to way
+        Given the grid
+          | 1 | 2 |
+          | 3 | 4 |
+        And the places
+          | osm | class    | type           | name | admin | geometry        |
+          | W1  | boundary | administrative | Haha | 5     | (1, 2, 4, 3, 1) |
+        When importing
+        Then placex contains
+          | object |
+          | W1 |
+        When updating places
+          | osm | class    | type           | name | admin | geometry   |
+          | W1  | boundary | administrative | Haha | 5     | 1, 2, 4, 3 |
+        Then placex has no entry for W1
+
+     #895
+     Scenario: update rank when boundary is downgraded from admin to historic
+        Given the grid
+          | 1 | 2 |
+          | 3 | 4 |
+        And the places
+          | osm | class    | type           | name | admin | geometry        |
+          | W1  | boundary | administrative | Haha | 5     | (1, 2, 4, 3, 1) |
+        When importing
+        Then placex contains
+          | object | rank_address |
+          | W1     | 10           |
+        When updating places
+          | osm | class    | type           | name | admin | geometry        |
+          | W1  | boundary | historic       | Haha | 5     | (1, 2, 4, 3, 1) |
+        Then placex contains
+          | object | rank_address |
+          | W1     | 0            |