X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/9d9745b378aec1694298232df76a5a740f8bb703..131527bdab6738baff679171c421ea7fa863e100:/tests/features/db/import/interpolation.feature?ds=sidebyside diff --git a/tests/features/db/import/interpolation.feature b/tests/features/db/import/interpolation.feature index d70bf18a..195cbfdf 100644 --- a/tests/features/db/import/interpolation.feature +++ b/tests/features/db/import/interpolation.feature @@ -229,8 +229,8 @@ Feature: Import of address interpolations Given the place nodes | osm_id | class | type | housenumber | geometry | 1 | place | house | 2 | 1 1 - | 2 | place | house | 8 | 1.001 1.001 - | 3 | place | house | 4 | 1 1.001 + | 2 | place | house | 14 | 1.001 1.001 + | 3 | place | house | 10 | 1 1.001 And the place ways | osm_id | class | type | housenumber | geometry | 1 | place | houses | even | 1 1, 1 1.001, 1.001 1.001 @@ -240,7 +240,52 @@ Feature: Import of address interpolations When importing Then way 1 expands to housenumbers | housenumber | centroid - | 6 | 1.0005,1.001 + | 4 | 1,1.00025 + | 6 | 1,1.0005 + | 8 | 1,1.00075 + | 12 | 1.0005,1.001 + + Scenario: Simple even four point interpolation + Given the place nodes + | osm_id | class | type | housenumber | geometry + | 1 | place | house | 2 | 1 1 + | 2 | place | house | 14 | 1.001 1.001 + | 3 | place | house | 10 | 1 1.001 + | 4 | place | house | 18 | 1.001 1.002 + And the place ways + | osm_id | class | type | housenumber | geometry + | 1 | place | houses | even | 1 1, 1 1.001, 1.001 1.001, 1.001 1.002 + And the ways + | id | nodes + | 1 | 1,3,2,4 + When importing + Then way 1 expands to housenumbers + | housenumber | centroid + | 4 | 1,1.00025 + | 6 | 1,1.0005 + | 8 | 1,1.00075 + | 12 | 1.0005,1.001 + | 16 | 1.001,1.0015 + + Scenario: Reverse simple even three point interpolation + Given the place nodes + | osm_id | class | type | housenumber | geometry + | 1 | place | house | 2 | 1 1 + | 2 | place | house | 14 | 1.001 1.001 + | 3 | place | house | 10 | 1 1.001 + And the place ways + | osm_id | class | type | housenumber | geometry + | 1 | place | houses | even | 1.001 1.001, 1 1.001, 1 1 + And the ways + | id | nodes + | 1 | 2,3,1 + When importing + Then way 1 expands to housenumbers + | housenumber | centroid + | 4 | 1,1.00025 + | 6 | 1,1.0005 + | 8 | 1,1.00075 + | 12 | 1.0005,1.001 Scenario: Even three point interpolation with odd center point Given the place nodes @@ -359,4 +404,38 @@ Feature: Import of address interpolations And way 10 expands exactly to housenumbers 4 And way 11 expands exactly to housenumbers 14 + Scenario: Geometry of points and way don't match (github #253) + Given the place nodes + | osm_id | class | type | housenumber | geometry + | 1 | place | house | 10 | 144.9632341 -37.76163 + | 2 | place | house | 6 | 144.9630541 -37.7628174 + | 3 | shop | supermarket | 2 | 144.9629794 -37.7630755 + And the place ways + | osm_id | class | type | housenumber | geometry + | 1 | place | houses | even | 144.9632341 -37.76163,144.9630541 -37.7628172,144.9629794 -37.7630755 + And the ways + | id | nodes + | 1 | 1,2,3 + When importing + Then way 1 expands to housenumbers + | housenumber | centroid + | 4 | 144.963016723312,-37.7629464422819+-0.000005 + | 8 | 144.9631440856,-37.762223694978+-0.000005 + Scenario: Place with missing address information + Given the place nodes + | osm_id | class | type | housenumber | geometry + | 1 | place | house | 23 | 0.0001 0.0001 + | 2 | amenity | school | | 0.0001 0.0002 + | 3 | place | house | 29 | 0.0001 0.0004 + And the place ways + | osm_id | class | type | housenumber | geometry + | 1 | place | houses | odd | 0.0001 0.0001,0.0001 0.0002,0.0001 0.0004 + And the ways + | id | nodes + | 1 | 1,2,3 + When importing + Then way 1 expands to housenumbers + | housenumber | centroid + | 25 | 0.0001,0.0002 + | 27 | 0.0001,0.0003