mirror of
https://github.com/osm-search/Nominatim.git
synced 2026-02-16 15:47:58 +00:00
add more tests for interpolations (mostly updating)
This commit is contained in:
@@ -14,13 +14,9 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 1,2
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 2 | 1,1
|
||||
| 4 | 1,1.0005
|
||||
And node 2 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 6 | 1,1.001
|
||||
|
||||
Scenario: Simple even two point interpolation with zero beginning
|
||||
Given the place nodes
|
||||
@@ -34,15 +30,11 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 1,2
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 0 | 1,1
|
||||
| 2 | 1,1.00025
|
||||
| 4 | 1,1.0005
|
||||
| 6 | 1,1.00075
|
||||
And node 2 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 8 | 1,1.001
|
||||
|
||||
Scenario: Backwards even two point interpolation
|
||||
Given the place nodes
|
||||
@@ -56,13 +48,9 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 2,1
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 2 | 1,1
|
||||
And node 2 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 4 | 1,1.0005
|
||||
| 6 | 1,1.001
|
||||
|
||||
Scenario: Even two point interpolation with odd beginning
|
||||
Given the place nodes
|
||||
@@ -76,14 +64,10 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 1,2
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 11 | 1,1
|
||||
| 12 | 1,1.0002
|
||||
| 14 | 1,1.0006
|
||||
And node 2 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 16 | 1,1.001
|
||||
|
||||
Scenario: Even two point interpolation with odd end
|
||||
Given the place nodes
|
||||
@@ -97,14 +81,10 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 1,2
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 10 | 1,1
|
||||
| 12 | 1,1.0004
|
||||
| 14 | 1,1.0008
|
||||
And node 2 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 15 | 1,1.001
|
||||
|
||||
Scenario: Reverse even two point interpolation with odd beginning
|
||||
Given the place nodes
|
||||
@@ -118,14 +98,10 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 2,1
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 11 | 1,1
|
||||
And node 2 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 12 | 1,1.0002
|
||||
| 14 | 1,1.0006
|
||||
| 16 | 1,1.001
|
||||
|
||||
Scenario: Reverse even two point interpolation with odd end
|
||||
Given the place nodes
|
||||
@@ -139,14 +115,10 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 2,1
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 10 | 1,1
|
||||
And node 2 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 12 | 1,1.0004
|
||||
| 14 | 1,1.0008
|
||||
| 15 | 1,1.001
|
||||
|
||||
Scenario: Simple odd two point interpolation
|
||||
Given the place nodes
|
||||
@@ -160,16 +132,12 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 1,2
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 1 | 1,1
|
||||
| 3 | 1,1.0002
|
||||
| 5 | 1,1.0004
|
||||
| 7 | 1,1.0006
|
||||
| 9 | 1,1.0008
|
||||
And node 2 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 11 | 1,1.001
|
||||
|
||||
Scenario: Odd two point interpolation with even beginning
|
||||
Given the place nodes
|
||||
@@ -183,14 +151,10 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 1,2
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 2 | 1,1
|
||||
| 3 | 1,1.0002
|
||||
| 5 | 1,1.0006
|
||||
And node 2 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 7 | 1,1.001
|
||||
|
||||
Scenario: Simple all two point interpolation
|
||||
Given the place nodes
|
||||
@@ -204,13 +168,9 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 1,2
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 1 | 1,1
|
||||
| 2 | 1,1.0005
|
||||
And node 2 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 3 | 1,1.001
|
||||
|
||||
Scenario: Simple numbered two point interpolation
|
||||
Given the place nodes
|
||||
@@ -224,13 +184,9 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 1,2
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 3 | 1,1
|
||||
| 6 | 1,1.0005
|
||||
And node 2 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 9 | 1,1.001
|
||||
|
||||
Scenario: Even two point interpolation with intermediate empty node
|
||||
Given the place nodes
|
||||
@@ -244,15 +200,11 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 1,3,2
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 2 | 1,1
|
||||
| 4 | 1,1.0005
|
||||
| 6 | 1,1.001
|
||||
| 8 | 1.0005,1.001
|
||||
And node 2 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 10 | 1.001,1.001
|
||||
|
||||
|
||||
Scenario: Even two point interpolation with intermediate duplicated empty node
|
||||
@@ -267,15 +219,11 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 1,3,3,2
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 2 | 1,1
|
||||
| 4 | 1,1.0005
|
||||
| 6 | 1,1.001
|
||||
| 8 | 1.0005,1.001
|
||||
And node 2 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 10 | 1.001,1.001
|
||||
|
||||
Scenario: Simple even three point interpolation
|
||||
Given the place nodes
|
||||
@@ -290,16 +238,9 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 1,3,2
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 2 | 1,1
|
||||
Then node 3 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 4 | 1,1.001
|
||||
| 6 | 1.0005,1.001
|
||||
And node 2 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 8 | 1.001,1.001
|
||||
|
||||
Scenario: Even three point interpolation with odd center point
|
||||
Given the place nodes
|
||||
@@ -314,17 +255,10 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 1,3,2
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 2 | 1,1
|
||||
| 4 | 1,1.0004
|
||||
| 6 | 1,1.0008
|
||||
Then node 3 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 7 | 1,1.001
|
||||
And node 2 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 8 | 1.001,1.001
|
||||
|
||||
Scenario: Interpolation on self-intersecting way
|
||||
Given the place nodes
|
||||
@@ -339,17 +273,9 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 1,2,3,2
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 2 | 0,0
|
||||
| 4 | 0,0.0005
|
||||
Then node 2 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 6 | 0,0.001
|
||||
| 8 | 0,0.0015
|
||||
Then node 3 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 10 | 0,0.002
|
||||
| 8 | 0,0.0015
|
||||
|
||||
Scenario: Interpolation on self-intersecting way II
|
||||
@@ -364,12 +290,73 @@ Feature: Import of address interpolations
|
||||
| id | nodes
|
||||
| 1 | 1,2,3,2
|
||||
When importing
|
||||
Then node 1 expands to housenumbers
|
||||
Then way 1 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 2 | 0,0
|
||||
| 4 | 0,0.0005
|
||||
Then node 2 expands to housenumbers
|
||||
| housenumber | centroid
|
||||
| 6 | 0,0.001
|
||||
|
||||
|
||||
Scenario: addr:street on interpolation way
|
||||
Given the scene parallel-road
|
||||
And the place nodes
|
||||
| osm_id | class | type | housenumber | geometry
|
||||
| 1 | place | house | 2 | :n-middle-w
|
||||
| 2 | place | house | 6 | :n-middle-e
|
||||
| 3 | place | house | 12 | :n-middle-w
|
||||
| 4 | place | house | 16 | :n-middle-e
|
||||
And the place ways
|
||||
| osm_id | class | type | housenumber | street | geometry
|
||||
| 10 | place | houses | even | | :w-middle
|
||||
| 11 | place | houses | even | Cloud Street | :w-middle
|
||||
And the place ways
|
||||
| osm_id | class | type | name | geometry
|
||||
| 2 | highway | tertiary | 'name' : 'Sun Way' | :w-north
|
||||
| 3 | highway | tertiary | 'name' : 'Cloud Street' | :w-south
|
||||
And the ways
|
||||
| id | nodes
|
||||
| 10 | 1,100,101,102,2
|
||||
| 11 | 3,200,201,202,4
|
||||
When importing
|
||||
Then table placex contains
|
||||
| object | parent_place_id
|
||||
| N1 | W2
|
||||
| N2 | W2
|
||||
| N3 | W3
|
||||
| N4 | W3
|
||||
| W10 | W2
|
||||
| W11 | W3
|
||||
And way 10 expands exactly to housenumbers 4
|
||||
And way 11 expands exactly to housenumbers 14
|
||||
|
||||
Scenario: addr:street on housenumber way
|
||||
Given the scene parallel-road
|
||||
And the place nodes
|
||||
| osm_id | class | type | housenumber | street | geometry
|
||||
| 1 | place | house | 2 | | :n-middle-w
|
||||
| 2 | place | house | 6 | | :n-middle-e
|
||||
| 3 | place | house | 12 | Cloud Street | :n-middle-w
|
||||
| 4 | place | house | 16 | Cloud Street | :n-middle-e
|
||||
And the place ways
|
||||
| osm_id | class | type | housenumber | geometry
|
||||
| 10 | place | houses | even | :w-middle
|
||||
| 11 | place | houses | even | :w-middle
|
||||
And the place ways
|
||||
| osm_id | class | type | name | geometry
|
||||
| 2 | highway | tertiary | 'name' : 'Sun Way' | :w-north
|
||||
| 3 | highway | tertiary | 'name' : 'Cloud Street' | :w-south
|
||||
And the ways
|
||||
| id | nodes
|
||||
| 10 | 1,100,101,102,2
|
||||
| 11 | 3,200,201,202,4
|
||||
When importing
|
||||
Then table placex contains
|
||||
| object | parent_place_id
|
||||
| N1 | W2
|
||||
| N2 | W2
|
||||
| N3 | W3
|
||||
| N4 | W3
|
||||
| W10 | W2
|
||||
| W11 | W3
|
||||
And way 10 expands exactly to housenumbers 4
|
||||
And way 11 expands exactly to housenumbers 14
|
||||
|
||||
|
||||
|
||||
167
tests/features/db/update/interpolation.feature
Normal file
167
tests/features/db/update/interpolation.feature
Normal file
@@ -0,0 +1,167 @@
|
||||
@DB
|
||||
Feature: Update of address interpolations
|
||||
Test the interpolated address are updated correctly
|
||||
|
||||
Scenario: addr:street added to interpolation
|
||||
Given the scene parallel-road
|
||||
And the place nodes
|
||||
| osm_id | class | type | housenumber | geometry
|
||||
| 1 | place | house | 2 | :n-middle-w
|
||||
| 2 | place | house | 6 | :n-middle-e
|
||||
And the place ways
|
||||
| osm_id | class | type | housenumber | geometry
|
||||
| 10 | place | houses | even | :w-middle
|
||||
And the place ways
|
||||
| osm_id | class | type | name | geometry
|
||||
| 2 | highway | unclassified | 'name' : 'Sun Way' | :w-north
|
||||
| 3 | highway | unclassified | 'name' : 'Cloud Street' | :w-south
|
||||
And the ways
|
||||
| id | nodes
|
||||
| 10 | 1,100,101,102,2
|
||||
When importing
|
||||
Then table placex contains
|
||||
| object | parent_place_id
|
||||
| N1 | W2
|
||||
| N2 | W2
|
||||
| W10 | W2
|
||||
And way 10 expands exactly to housenumbers 4
|
||||
When updating place ways
|
||||
| osm_id | class | type | housenumber | street | geometry
|
||||
| 10 | place | houses | even | Cloud Street | :w-middle
|
||||
Then way 10 expands exactly to housenumbers 4
|
||||
And table placex contains
|
||||
| object | parent_place_id
|
||||
| N1 | W3
|
||||
| N2 | W3
|
||||
| W10 | W3
|
||||
|
||||
@Fail
|
||||
Scenario: addr:street added to housenumbers
|
||||
Given the scene parallel-road
|
||||
And the place nodes
|
||||
| osm_id | class | type | housenumber | geometry
|
||||
| 1 | place | house | 2 | :n-middle-w
|
||||
| 2 | place | house | 6 | :n-middle-e
|
||||
And the place ways
|
||||
| osm_id | class | type | housenumber | geometry
|
||||
| 10 | place | houses | even | :w-middle
|
||||
And the place ways
|
||||
| osm_id | class | type | name | geometry
|
||||
| 2 | highway | unclassified | 'name' : 'Sun Way' | :w-north
|
||||
| 3 | highway | unclassified | 'name' : 'Cloud Street' | :w-south
|
||||
And the ways
|
||||
| id | nodes
|
||||
| 10 | 1,100,101,102,2
|
||||
When importing
|
||||
Then table placex contains
|
||||
| object | parent_place_id
|
||||
| N1 | W2
|
||||
| N2 | W2
|
||||
| W10 | W2
|
||||
And way 10 expands exactly to housenumbers 4
|
||||
When updating place nodes
|
||||
| osm_id | class | type | street | housenumber | geometry
|
||||
| 1 | place | house | Cloud Street| 2 | :n-middle-w
|
||||
| 2 | place | house | Cloud Street| 6 | :n-middle-e
|
||||
Then way 10 expands exactly to housenumbers 4
|
||||
And table placex contains
|
||||
| object | parent_place_id
|
||||
| N1 | W3
|
||||
| N2 | W3
|
||||
| W10 | W3
|
||||
|
||||
|
||||
Scenario: interpolation tag removed
|
||||
Given the scene parallel-road
|
||||
And the place nodes
|
||||
| osm_id | class | type | housenumber | geometry
|
||||
| 1 | place | house | 2 | :n-middle-w
|
||||
| 2 | place | house | 6 | :n-middle-e
|
||||
And the place ways
|
||||
| osm_id | class | type | housenumber | geometry
|
||||
| 10 | place | houses | even | :w-middle
|
||||
And the place ways
|
||||
| osm_id | class | type | name | geometry
|
||||
| 2 | highway | unclassified | 'name' : 'Sun Way' | :w-north
|
||||
| 3 | highway | unclassified | 'name' : 'Cloud Street' | :w-south
|
||||
And the ways
|
||||
| id | nodes
|
||||
| 10 | 1,100,101,102,2
|
||||
When importing
|
||||
Then table placex contains
|
||||
| object | parent_place_id
|
||||
| N1 | W2
|
||||
| N2 | W2
|
||||
| W10 | W2
|
||||
And way 10 expands exactly to housenumbers 4
|
||||
When marking for delete W10
|
||||
Then way 10 expands to no housenumbers
|
||||
And table placex contains
|
||||
| object | parent_place_id
|
||||
| N1 | W2
|
||||
| N2 | W2
|
||||
|
||||
|
||||
Scenario: referenced road added
|
||||
Given the scene parallel-road
|
||||
And the place nodes
|
||||
| osm_id | class | type | housenumber | geometry
|
||||
| 1 | place | house | 2 | :n-middle-w
|
||||
| 2 | place | house | 6 | :n-middle-e
|
||||
And the place ways
|
||||
| osm_id | class | type | housenumber | street | geometry
|
||||
| 10 | place | houses | even | Cloud Street| :w-middle
|
||||
And the place ways
|
||||
| osm_id | class | type | name | geometry
|
||||
| 2 | highway | unclassified | 'name' : 'Sun Way' | :w-north
|
||||
And the ways
|
||||
| id | nodes
|
||||
| 10 | 1,100,101,102,2
|
||||
When importing
|
||||
Then table placex contains
|
||||
| object | parent_place_id
|
||||
| N1 | W2
|
||||
| N2 | W2
|
||||
| W10 | W2
|
||||
And way 10 expands exactly to housenumbers 4
|
||||
When updating place ways
|
||||
| osm_id | class | type | name | geometry
|
||||
| 3 | highway | unclassified | 'name' : 'Cloud Street' | :w-south
|
||||
Then way 10 expands exactly to housenumbers 4
|
||||
And table placex contains
|
||||
| object | parent_place_id
|
||||
| N1 | W3
|
||||
| N2 | W3
|
||||
| W10 | W3
|
||||
|
||||
|
||||
Scenario: referenced road deleted
|
||||
Given the scene parallel-road
|
||||
And the place nodes
|
||||
| osm_id | class | type | housenumber | geometry
|
||||
| 1 | place | house | 2 | :n-middle-w
|
||||
| 2 | place | house | 6 | :n-middle-e
|
||||
And the place ways
|
||||
| osm_id | class | type | housenumber | street | geometry
|
||||
| 10 | place | houses | even | Cloud Street| :w-middle
|
||||
And the place ways
|
||||
| osm_id | class | type | name | geometry
|
||||
| 2 | highway | unclassified | 'name' : 'Sun Way' | :w-north
|
||||
| 3 | highway | unclassified | 'name' : 'Cloud Street' | :w-south
|
||||
And the ways
|
||||
| id | nodes
|
||||
| 10 | 1,100,101,102,2
|
||||
When importing
|
||||
Then table placex contains
|
||||
| object | parent_place_id
|
||||
| N1 | W3
|
||||
| N2 | W3
|
||||
| W10 | W3
|
||||
And way 10 expands exactly to housenumbers 4
|
||||
When marking for delete W3
|
||||
Then way 10 expands exactly to housenumbers 4
|
||||
And table placex contains
|
||||
| object | parent_place_id
|
||||
| N1 | W2
|
||||
| N2 | W2
|
||||
| W10 | W2
|
||||
Reference in New Issue
Block a user