2 Feature: Update of address interpolations
 
   3     Test the interpolated address are updated correctly
 
   5     Scenario: new interpolation added to existing street
 
  12           | osm | class   | type         | name         | geometry |
 
  13           | W2  | highway | unclassified | Sun Way      | 10,11    |
 
  14           | W3  | highway | unclassified | Cloud Street | 20,21    |
 
  19       Then W10 expands to no interpolation
 
  21           | osm | class | type  | housenr |
 
  22           | N1  | place | house | 2       |
 
  23           | N2  | place | house | 6       |
 
  25           | osm | class | type   | addr+interpolation | geometry |
 
  26           | W10 | place | houses | even               | 1,2      |
 
  28           | object | parent_place_id |
 
  31       And W10 expands to interpolation
 
  32           | parent_place_id | start | end | geometry |
 
  35     Scenario: addr:street added to interpolation
 
  42           | osm | class | type  | housenr |
 
  43           | N1  | place | house | 2       |
 
  44           | N2  | place | house | 6       |
 
  46           | osm | class | type   | addr+interpolation | geometry |
 
  47           | W10 | place | houses | even               | 1,2      |
 
  49           | osm | class   | type         | name         | geometry |
 
  50           | W2  | highway | unclassified | Sun Way      | 10,11    |
 
  51           | W3  | highway | unclassified | Cloud Street | 20,21    |
 
  57           | object | parent_place_id |
 
  60       And W10 expands to interpolation
 
  61           | parent_place_id | start | end |
 
  64           | osm | class   | type    | addr+interpolation | street       | geometry |
 
  65           | W10 | place   | houses  | even               | Cloud Street | 1,2      |
 
  67           | object | parent_place_id |
 
  70       And W10 expands to interpolation
 
  71           | parent_place_id | start | end |
 
  74     Scenario: addr:street added to housenumbers
 
  81           | osm | class | type  | housenr |
 
  82           | N1  | place | house | 2       |
 
  83           | N2  | place | house | 6       |
 
  85           | osm | class | type   | addr+interpolation | geometry |
 
  86           | W10 | place | houses | even               | 1,2      |
 
  88           | osm | class   | type         | name         | geometry |
 
  89           | W2  | highway | unclassified | Sun Way      | 10,11    |
 
  90           | W3  | highway | unclassified | Cloud Street | 20,21    |
 
  96           | object | parent_place_id |
 
  99       And W10 expands to interpolation
 
 100           | parent_place_id | start | end |
 
 103           | osm | class | type  | street      | housenr |
 
 104           | N1  | place | house | Cloud Street| 2       |
 
 105           | N2  | place | house | Cloud Street| 6       |
 
 107           | object | parent_place_id |
 
 110       And W10 expands to interpolation
 
 111           | parent_place_id | start | end |
 
 114     Scenario: interpolation tag removed
 
 121           | osm | class | type  | housenr |
 
 122           | N1  | place | house | 2       |
 
 123           | N2  | place | house | 6       |
 
 125           | osm | class | type   | addr+interpolation | geometry |
 
 126           | W10 | place | houses | even               | 1,2      |
 
 128           | osm | class   | type         | name         | geometry |
 
 129           | W2  | highway | unclassified | Sun Way      | 10,11    |
 
 130           | W3  | highway | unclassified | Cloud Street | 20,21    |
 
 136           | object | parent_place_id |
 
 139       And W10 expands to interpolation
 
 140           | parent_place_id | start | end |
 
 142       When marking for delete W10
 
 143       Then W10 expands to no interpolation
 
 145           | object | parent_place_id |
 
 149     Scenario: referenced road added
 
 156           | osm | class | type  | housenr |
 
 157           | N1  | place | house | 2       |
 
 158           | N2  | place | house | 6       |
 
 160           | osm | class   | type    | addr+interpolation | street      | geometry |
 
 161           | W10 | place   | houses  | even               | Cloud Street| 1,2      |
 
 163           | osm | class   | type         | name     | geometry |
 
 164           | W2  | highway | unclassified | Sun Way  | 10,11    |
 
 170           | object | parent_place_id |
 
 173       And W10 expands to interpolation
 
 174           | parent_place_id | start | end |
 
 177           | osm | class   | type         | name         | geometry |
 
 178           | W3  | highway | unclassified | Cloud Street | 20,21    |
 
 180           | object | parent_place_id |
 
 183       And W10 expands to interpolation
 
 184           | parent_place_id | start | end |
 
 187     Scenario: referenced road deleted
 
 194           | osm | class | type  | housenr |
 
 195           | N1  | place | house | 2       |
 
 196           | N2  | place | house | 6       |
 
 198           | osm | class   | type    | addr+interpolation | street      | geometry |
 
 199           | W10 | place   | houses  | even               | Cloud Street| 1,2      |
 
 201           | osm | class   | type         | name         | geometry |
 
 202           | W2  | highway | unclassified | Sun Way      | 10,11    |
 
 203           | W3  | highway | unclassified | Cloud Street | 20,21    |
 
 209           | object | parent_place_id |
 
 212       And W10 expands to interpolation
 
 213           | parent_place_id | start | end |
 
 215       When marking for delete W3
 
 217           | object | parent_place_id |
 
 220       And W10 expands to interpolation
 
 221           | parent_place_id | start | end |
 
 224     Scenario: building becomes interpolation
 
 230           | osm | class    | type  | housenr | geometry    |
 
 231           | W1  | place    | house | 3       | (1,2,3,4,1) |
 
 233           | osm | class   | type         | name         | geometry |
 
 234           | W2  | highway | unclassified | Cloud Street | 10,11    |
 
 237           | object | parent_place_id |
 
 243           | osm | class | type  | housenr |
 
 244           | N1  | place | house | 2       |
 
 245           | N2  | place | house | 6       |
 
 247           | osm | class   | type    | addr+interpolation | street      | geometry |
 
 248           | W1  | place   | houses  | even               | Cloud Street| 1,2      |
 
 249       Then placex has no entry for W1
 
 250       And W1 expands to interpolation
 
 251           | parent_place_id | start | end |
 
 254     Scenario: interpolation becomes building
 
 260           | osm | class | type  | housenr |
 
 261           | N1  | place | house | 2       |
 
 262           | N2  | place | house | 6       |
 
 264           | osm | class   | type         | name         | geometry |
 
 265           | W2  | highway | unclassified | Cloud Street | 10,11    |
 
 270           | osm | class   | type    | addr+interpolation | street      | geometry |
 
 271           | W1  | place   | houses  | even               | Cloud Street| 1,2      |
 
 273       Then placex has no entry for W1
 
 274       And W1 expands to interpolation
 
 275           | parent_place_id | start | end |
 
 278           | osm | class    | type  | housenr | geometry    |
 
 279           | W1  | place    | house | 3       | (1,2,3,4,1) |
 
 281           | object | parent_place_id |
 
 283       And W1 expands to no interpolation
 
 285     Scenario: housenumbers added to interpolation
 
 290           | osm | class   | type         | name         | geometry |
 
 291           | W2  | highway | unclassified | Cloud Street | 10,11    |
 
 296           | osm | class   | type    | addr+interpolation | geometry |
 
 297           | W1  | place   | houses  | even               | 1,2 |
 
 299       Then W1 expands to no interpolation
 
 301           | osm | class | type  | housenr |
 
 302           | N1  | place | house | 2       |
 
 303           | N2  | place | house | 6       |
 
 304       Then W1 expands to interpolation
 
 305           | parent_place_id | start | end |
 
 308     Scenario: housenumber added in middle of interpolation
 
 313           | osm | class   | type         | name         | geometry |
 
 314           | W1  | highway | unclassified | Cloud Street | 1, 2     |
 
 319           | osm | class   | type    | addr+interpolation | geometry |
 
 320           | W2  | place   | houses  | even    | 3,4,5    |
 
 322           | osm | class | type  | housenr |
 
 323           | N3  | place | house | 2       |
 
 324           | N5  | place | house | 10      |
 
 326       Then W2 expands to interpolation
 
 327           | parent_place_id | start | end |
 
 330           | osm | class | type  | housenr |
 
 331           | N4  | place | house | 6       |
 
 332       Then W2 expands to interpolation
 
 333           | parent_place_id | start | end |
 
 338     Scenario: housenumber removed in middle of interpolation
 
 343           | osm | class   | type         | name         | geometry |
 
 344           | W1  | highway | unclassified | Cloud Street | 1, 2     |
 
 349           | osm | class   | type    | addr+interpolation | geometry |
 
 350           | W2  | place   | houses  | even    | 3,4,5    |
 
 352           | osm | class | type  | housenr |
 
 353           | N3  | place | house | 2       |
 
 354           | N4  | place | house | 6       |
 
 355           | N5  | place | house | 10      |
 
 357       Then W2 expands to interpolation
 
 358           | parent_place_id | start | end |
 
 361       When marking for delete N4
 
 362       Then W2 expands to interpolation
 
 363           | parent_place_id | start | end |
 
 366     Scenario: Change the start housenumber
 
 371           | osm | class   | type         | name         | geometry |
 
 372           | W1  | highway | unclassified | Cloud Street | 1, 2     |
 
 377           | osm | class   | type    | addr+interpolation | geometry |
 
 378           | W2  | place   | houses  | even    | 3,4      |
 
 380           | osm | class | type  | housenr |
 
 381           | N3  | place | house | 2       |
 
 382           | N4  | place | house | 6       |
 
 384       Then W2 expands to interpolation
 
 385           | parent_place_id | start | end |
 
 388           | osm | class | type  | housenr |
 
 389           | N4  | place | house | 8       |
 
 390       Then W2 expands to interpolation
 
 391           | parent_place_id | start | end |
 
 394     Scenario: Legal interpolation type changed to illegal one
 
 399           | osm | class   | type         | name         | geometry |
 
 400           | W1  | highway | unclassified | Cloud Street | 1, 2     |
 
 405           | osm | class   | type    | addr+interpolation | geometry |
 
 406           | W2  | place   | houses  | even               | 3,4      |
 
 408           | osm | class | type  | housenr |
 
 409           | N3  | place | house | 2       |
 
 410           | N4  | place | house | 6       |
 
 412       Then W2 expands to interpolation
 
 413           | parent_place_id | start | end |
 
 416           | osm | class   | type    | addr+interpolation | geometry |
 
 417           | W2  | place   | houses  | 12-2               | 3,4      |
 
 418       Then W2 expands to no interpolation