2 Feature: Updates of linked places
 
   3     Tests that linked places are correctly added and deleted.
 
   5     Scenario: Add linked place when linking relation is renamed
 
   7             | osm | class | type | name | geometry |
 
   8             | N1  | place | city | foo  | 0 0 |
 
  10             | osm | class    | type           | name | admin | geometry |
 
  11             | R1  | boundary | administrative | foo  | 8     | poly-area:0.1 |
 
  13         And searching for "foo" with dups
 
  18          | osm | class    | type           | name   | admin | geometry |
 
  19          | R1  | boundary | administrative | foobar | 8     | poly-area:0.1 |
 
  21          | object | linked_place_id |
 
  23         When searching for "foo" with dups
 
  28     Scenario: Add linked place when linking relation is removed
 
  30             | osm | class | type | name | geometry |
 
  31             | N1  | place | city | foo  | 0 0 |
 
  33             | osm | class    | type           | name | admin | geometry |
 
  34             | R1  | boundary | administrative | foo  | 8     | poly-area:0.1 |
 
  36         And searching for "foo" with dups
 
  40         When marking for delete R1
 
  42          | object | linked_place_id |
 
  44         When searching for "foo" with dups
 
  49     Scenario: Remove linked place when linking relation is added
 
  51             | osm | class | type | name | geometry |
 
  52             | N1  | place | city | foo  | 0 0 |
 
  54         And searching for "foo" with dups
 
  59          | osm | class    | type           | name   | admin | geometry |
 
  60          | R1  | boundary | administrative | foo    | 8     | poly-area:0.1 |
 
  62          | object | linked_place_id |
 
  64         When searching for "foo" with dups
 
  69     Scenario: Remove linked place when linking relation is renamed
 
  71             | osm | class | type | name | geometry |
 
  72             | N1  | place | city | foo  | 0 0 |
 
  74          | osm | class    | type           | name   | admin | geometry |
 
  75          | R1  | boundary | administrative | foobar | 8     | poly-area:0.1 |
 
  77         And searching for "foo" with dups
 
  82          | osm | class    | type           | name   | admin | geometry |
 
  83          | R1  | boundary | administrative | foo    | 8     | poly-area:0.1 |
 
  85          | object | linked_place_id |
 
  87         When searching for "foo" with dups
 
  92     Scenario: Update linking relation when linkee name is updated
 
  94          | osm | class    | type           | name | admin | geometry |
 
  95          | R1  | boundary | administrative | rel  | 8     | poly-area:0.1 |
 
  97          | osm | class    | type        | name+name:de | admin | geometry |
 
  98          | N3  | place    | city           | pnt  | 30    | 0.00001 0 |
 
 104          | object | linked_place_id | name+name:de |
 
 108          | osm | class    | type        | name+name:de | admin | geometry |
 
 109          | N3  | place    | city        | newname  | 30    | 0.00001 0 |
 
 111          | object | linked_place_id | name+name:de |
 
 112          | N3     | R1              | newname  |
 
 115     Scenario: Updating linkee extratags keeps linker's extratags
 
 116         Given the named places
 
 117          | osm | class    | type           | extra+wikidata | admin | geometry |
 
 118          | R1  | boundary | administrative | 34             | 8     | poly-area:0.1 |
 
 120          | osm | class    | type           | geometry |
 
 121          | N3  | place    | city           | 0.00001 0 |
 
 127          | object | extratags |
 
 128          | R1     | 'wikidata' : '34', 'linked_place' : 'city' |
 
 130          | osm | class    | type        | name    | extra+oneway | admin | geometry |
 
 131          | N3  | place    | city        | newname | yes          | 30    | 0.00001 0 |
 
 133          | object | extratags |
 
 134          | R1     | 'wikidata' : '34', 'oneway' : 'yes', 'linked_place' : 'city' |
 
 136     Scenario: Remove linked_place info when linkee is removed
 
 138             | osm | class | type | name | geometry |
 
 139             | N1  | place | city | foo  | 0 0 |
 
 141             | osm | class    | type           | name | admin | geometry |
 
 142             | R1  | boundary | administrative | foo  | 8     | poly-area:0.1 |
 
 145             | object | extratags |
 
 146             | R1     | 'linked_place' : 'city' |
 
 147         When marking for delete N1
 
 149             | object | extratags |
 
 152     Scenario: Update linked_place info when linkee type changes
 
 154             | osm | class | type | name | geometry |
 
 155             | N1  | place | city | foo  | 0 0 |
 
 157             | osm | class    | type           | name | admin | geometry |
 
 158             | R1  | boundary | administrative | foo  | 8     | poly-area:0.1 |
 
 161             | object | extratags |
 
 162             | R1     | 'linked_place' : 'city' |
 
 164             | osm | class | type | name | geometry |
 
 165             | N1  | place | town | foo  | 0 0 |
 
 167             | object | extratags |
 
 168             | R1     | 'linked_place' : 'town' |