X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/0e9e2bbdca37801215d5b3c1e65c9c417bf27796..764dcd7f6459c08aafd5cf2fcb7902cc2868cb30:/test/bdd/db/update/linked_places.feature diff --git a/test/bdd/db/update/linked_places.feature b/test/bdd/db/update/linked_places.feature index 17ca8003..42e62de5 100644 --- a/test/bdd/db/update/linked_places.feature +++ b/test/bdd/db/update/linked_places.feature @@ -89,3 +89,80 @@ Feature: Updates of linked places | osm_type | | R | + Scenario: Update linking relation when linkee name is updated + Given the places + | osm | class | type | name | admin | geometry | + | R1 | boundary | administrative | rel | 8 | poly-area:0.1 | + And the places + | osm | class | type | name+name:de | admin | geometry | + | N3 | place | city | pnt | 30 | 0.00001 0 | + And the relations + | id | members | + | 1 | N3:label | + When importing + Then placex contains + | object | linked_place_id | name+name:de | + | R1 | - | pnt | + | N3 | R1 | pnt | + When updating places + | osm | class | type | name+name:de | admin | geometry | + | N3 | place | city | newname | 30 | 0.00001 0 | + Then placex contains + | object | linked_place_id | name+name:de | + | N3 | R1 | newname | + | R1 | - | newname | + + Scenario: Updating linkee extratags keeps linker's extratags + Given the named places + | osm | class | type | extra+wikidata | admin | geometry | + | R1 | boundary | administrative | 34 | 8 | poly-area:0.1 | + And the named places + | osm | class | type | geometry | + | N3 | place | city | 0.00001 0 | + And the relations + | id | members | + | 1 | N3:label | + When importing + Then placex contains + | object | extratags | + | R1 | 'wikidata' : '34', 'linked_place' : 'city' | + When updating places + | osm | class | type | name | extra+oneway | admin | geometry | + | N3 | place | city | newname | yes | 30 | 0.00001 0 | + Then placex contains + | object | extratags | + | R1 | 'wikidata' : '34', 'oneway' : 'yes', 'linked_place' : 'city' | + + Scenario: Remove linked_place info when linkee is removed + Given the places + | osm | class | type | name | geometry | + | N1 | place | city | foo | 0 0 | + And the places + | osm | class | type | name | admin | geometry | + | R1 | boundary | administrative | foo | 8 | poly-area:0.1 | + When importing + Then placex contains + | object | extratags | + | R1 | 'linked_place' : 'city' | + When marking for delete N1 + Then placex contains + | object | extratags | + | R1 | | + + Scenario: Update linked_place info when linkee type changes + Given the places + | osm | class | type | name | geometry | + | N1 | place | city | foo | 0 0 | + And the places + | osm | class | type | name | admin | geometry | + | R1 | boundary | administrative | foo | 8 | poly-area:0.1 | + When importing + Then placex contains + | object | extratags | + | R1 | 'linked_place' : 'city' | + When updating places + | osm | class | type | name | geometry | + | N1 | place | town | foo | 0 0 | + Then placex contains + | object | extratags | + | R1 | 'linked_place' : 'town' |