1 Feature: Update of address interpolations
 
   2     Test the interpolated address are updated correctly
 
   4     Scenario: new interpolation added to existing street
 
  11           | osm | class   | type         | name         | geometry |
 
  12           | W2  | highway | unclassified | Sun Way      | 10,11    |
 
  13           | W3  | highway | unclassified | Cloud Street | 20,21    |
 
  18       Then W10 expands to no interpolation
 
  20           | osm | class | type  | housenr |
 
  21           | N1  | place | house | 2       |
 
  22           | N2  | place | house | 6       |
 
  24           | osm | class | type   | addr+interpolation | geometry |
 
  25           | W10 | place | houses | even               | 1,2      |
 
  27           | object | parent_place_id |
 
  30       And W10 expands to interpolation
 
  31           | parent_place_id | start | end | geometry |
 
  34     Scenario: addr:street added to interpolation
 
  41           | osm | class | type  | housenr |
 
  42           | N1  | place | house | 2       |
 
  43           | N2  | place | house | 6       |
 
  45           | osm | class | type   | addr+interpolation | geometry |
 
  46           | W10 | place | houses | even               | 1,2      |
 
  48           | osm | class   | type         | name         | geometry |
 
  49           | W2  | highway | unclassified | Sun Way      | 10,11    |
 
  50           | W3  | highway | unclassified | Cloud Street | 20,21    |
 
  56           | object | parent_place_id |
 
  59       And W10 expands to interpolation
 
  60           | parent_place_id | start | end |
 
  63           | osm | class   | type    | addr+interpolation | street       | geometry |
 
  64           | W10 | place   | houses  | even               | Cloud Street | 1,2      |
 
  66           | object | parent_place_id |
 
  69       And W10 expands to interpolation
 
  70           | parent_place_id | start | end |
 
  73     Scenario: addr:street added to housenumbers
 
  80           | osm | class | type  | housenr |
 
  81           | N1  | place | house | 2       |
 
  82           | N2  | place | house | 6       |
 
  84           | osm | class | type   | addr+interpolation | geometry |
 
  85           | W10 | place | houses | even               | 1,2      |
 
  87           | osm | class   | type         | name         | geometry |
 
  88           | W2  | highway | unclassified | Sun Way      | 10,11    |
 
  89           | W3  | highway | unclassified | Cloud Street | 20,21    |
 
  95           | object | parent_place_id |
 
  98       And W10 expands to interpolation
 
  99           | parent_place_id | start | end |
 
 102           | osm | class | type  | street      | housenr |
 
 103           | N1  | place | house | Cloud Street| 2       |
 
 104           | N2  | place | house | Cloud Street| 6       |
 
 106           | object | parent_place_id |
 
 109       And W10 expands to interpolation
 
 110           | parent_place_id | start | end |
 
 113     Scenario: interpolation tag removed
 
 120           | osm | class | type  | housenr |
 
 121           | N1  | place | house | 2       |
 
 122           | N2  | place | house | 6       |
 
 124           | osm | class | type   | addr+interpolation | geometry |
 
 125           | W10 | place | houses | even               | 1,2      |
 
 127           | osm | class   | type         | name         | geometry |
 
 128           | W2  | highway | unclassified | Sun Way      | 10,11    |
 
 129           | W3  | highway | unclassified | Cloud Street | 20,21    |
 
 135           | object | parent_place_id |
 
 138       And W10 expands to interpolation
 
 139           | parent_place_id | start | end |
 
 141       When marking for delete W10
 
 142       Then W10 expands to no interpolation
 
 144           | object | parent_place_id |
 
 148     Scenario: referenced road added
 
 155           | osm | class | type  | housenr |
 
 156           | N1  | place | house | 2       |
 
 157           | N2  | place | house | 6       |
 
 159           | osm | class   | type    | addr+interpolation | street      | geometry |
 
 160           | W10 | place   | houses  | even               | Cloud Street| 1,2      |
 
 162           | osm | class   | type         | name     | geometry |
 
 163           | W2  | highway | unclassified | Sun Way  | 10,11    |
 
 169           | object | parent_place_id |
 
 172       And W10 expands to interpolation
 
 173           | parent_place_id | start | end |
 
 176           | osm | class   | type         | name         | geometry |
 
 177           | W3  | highway | unclassified | Cloud Street | 20,21    |
 
 179           | object | parent_place_id |
 
 182       And W10 expands to interpolation
 
 183           | parent_place_id | start | end |
 
 186     Scenario: referenced road deleted
 
 193           | osm | class | type  | housenr |
 
 194           | N1  | place | house | 2       |
 
 195           | N2  | place | house | 6       |
 
 197           | osm | class   | type    | addr+interpolation | street      | geometry |
 
 198           | W10 | place   | houses  | even               | Cloud Street| 1,2      |
 
 200           | osm | class   | type         | name         | geometry |
 
 201           | W2  | highway | unclassified | Sun Way      | 10,11    |
 
 202           | W3  | highway | unclassified | Cloud Street | 20,21    |
 
 208           | object | parent_place_id |
 
 211       And W10 expands to interpolation
 
 212           | parent_place_id | start | end |
 
 214       When marking for delete W3
 
 216           | object | parent_place_id |
 
 219       And W10 expands to interpolation
 
 220           | parent_place_id | start | end |
 
 223     Scenario: building becomes interpolation
 
 229           | osm | class    | type  | housenr | geometry    |
 
 230           | W1  | place    | house | 3       | (1,2,3,4,1) |
 
 232           | osm | class   | type         | name         | geometry |
 
 233           | W2  | highway | unclassified | Cloud Street | 10,11    |
 
 236           | object | parent_place_id |
 
 242           | osm | class | type  | housenr |
 
 243           | N1  | place | house | 2       |
 
 244           | N2  | place | house | 6       |
 
 246           | osm | class   | type    | addr+interpolation | street      | geometry |
 
 247           | W1  | place   | houses  | even               | Cloud Street| 1,2      |
 
 248       Then placex has no entry for W1
 
 249       And W1 expands to interpolation
 
 250           | parent_place_id | start | end |
 
 253     Scenario: interpolation becomes building
 
 259           | osm | class | type  | housenr |
 
 260           | N1  | place | house | 2       |
 
 261           | N2  | place | house | 6       |
 
 263           | osm | class   | type         | name         | geometry |
 
 264           | W2  | highway | unclassified | Cloud Street | 10,11    |
 
 269           | osm | class   | type    | addr+interpolation | street      | geometry |
 
 270           | W1  | place   | houses  | even               | Cloud Street| 1,2      |
 
 272       Then placex has no entry for W1
 
 273       And W1 expands to interpolation
 
 274           | parent_place_id | start | end |
 
 277           | osm | class    | type  | housenr | geometry    |
 
 278           | W1  | place    | house | 3       | (1,2,3,4,1) |
 
 280           | object | parent_place_id |
 
 282       And W1 expands to no interpolation
 
 284     Scenario: housenumbers added to interpolation
 
 289           | osm | class   | type         | name         | geometry |
 
 290           | W2  | highway | unclassified | Cloud Street | 10,11    |
 
 295           | osm | class   | type    | addr+interpolation | geometry |
 
 296           | W1  | place   | houses  | even               | 1,2 |
 
 298       Then W1 expands to no interpolation
 
 300           | osm | class | type  | housenr |
 
 301           | N1  | place | house | 2       |
 
 302           | N2  | place | house | 6       |
 
 303       Then W1 expands to interpolation
 
 304           | parent_place_id | start | end |
 
 307     Scenario: housenumber added in middle of interpolation
 
 312           | osm | class   | type         | name         | geometry |
 
 313           | W1  | highway | unclassified | Cloud Street | 1, 2     |
 
 318           | osm | class   | type    | addr+interpolation | geometry |
 
 319           | W2  | place   | houses  | even    | 3,4,5    |
 
 321           | osm | class | type  | housenr |
 
 322           | N3  | place | house | 2       |
 
 323           | N5  | place | house | 10      |
 
 325       Then W2 expands to interpolation
 
 326           | parent_place_id | start | end |
 
 329           | osm | class | type  | housenr |
 
 330           | N4  | place | house | 6       |
 
 331       Then W2 expands to interpolation
 
 332           | parent_place_id | start | end |
 
 337     Scenario: housenumber removed in middle of interpolation
 
 342           | osm | class   | type         | name         | geometry |
 
 343           | W1  | highway | unclassified | Cloud Street | 1, 2     |
 
 348           | osm | class   | type    | addr+interpolation | geometry |
 
 349           | W2  | place   | houses  | even    | 3,4,5    |
 
 351           | osm | class | type  | housenr |
 
 352           | N3  | place | house | 2       |
 
 353           | N4  | place | house | 6       |
 
 354           | N5  | place | house | 10      |
 
 356       Then W2 expands to interpolation
 
 357           | parent_place_id | start | end |
 
 360       When marking for delete N4
 
 361       Then W2 expands to interpolation
 
 362           | parent_place_id | start | end |
 
 365     Scenario: Change the start housenumber
 
 370           | osm | class   | type         | name         | geometry |
 
 371           | W1  | highway | unclassified | Cloud Street | 1, 2     |
 
 376           | osm | class   | type    | addr+interpolation | geometry |
 
 377           | W2  | place   | houses  | even    | 3,4      |
 
 379           | osm | class | type  | housenr |
 
 380           | N3  | place | house | 2       |
 
 381           | N4  | place | house | 6       |
 
 383       Then W2 expands to interpolation
 
 384           | parent_place_id | start | end |
 
 387           | osm | class | type  | housenr |
 
 388           | N4  | place | house | 8       |
 
 389       Then W2 expands to interpolation
 
 390           | parent_place_id | start | end |
 
 393     Scenario: Legal interpolation type changed to illegal one
 
 398           | osm | class   | type         | name         | geometry |
 
 399           | W1  | highway | unclassified | Cloud Street | 1, 2     |
 
 404           | osm | class   | type    | addr+interpolation | geometry |
 
 405           | W2  | place   | houses  | even               | 3,4      |
 
 407           | osm | class | type  | housenr |
 
 408           | N3  | place | house | 2       |
 
 409           | N4  | place | house | 6       |
 
 411       Then W2 expands to interpolation
 
 412           | parent_place_id | start | end |
 
 415           | osm | class   | type    | addr+interpolation | geometry |
 
 416           | W2  | place   | houses  | 12-2               | 3,4      |
 
 417       Then W2 expands to no interpolation