mirror of
https://github.com/osm-search/Nominatim.git
synced 2026-02-16 15:47:58 +00:00
add simple tests for postcode import
This commit is contained in:
115
test/bdd/db/import/postcodes.feature
Normal file
115
test/bdd/db/import/postcodes.feature
Normal file
@@ -0,0 +1,115 @@
|
||||
@DB
|
||||
Feature: Import of postcodes
|
||||
Tests for postcode estimation
|
||||
|
||||
Scenario: Postcodes on the object are prefered over those on the address
|
||||
Given the scene admin-areas
|
||||
And the named places
|
||||
| osm | class | type | admin | addr+postcode | geometry |
|
||||
| R1 | boundary | administrative | 6 | 112 | :b0 |
|
||||
| R34 | boundary | administrative | 8 | 112 DE | :b1:E |
|
||||
| R4 | boundary | administrative | 10 | 112 DE 34 | :b2:N |
|
||||
And the named places
|
||||
| osm | class | type | addr+postcode | geometry |
|
||||
| W93 | highway | residential | 112 DE 344 | :w2N |
|
||||
| W22 | building | yes | 112 DE 344N | :building:w2N |
|
||||
When importing
|
||||
Then placex contains
|
||||
| object | postcode |
|
||||
| W22 | 112 DE 344N |
|
||||
| W93 | 112 DE 344 |
|
||||
| R4 | 112 DE 34 |
|
||||
| R34 | 112 DE |
|
||||
| R1 | 112 |
|
||||
|
||||
Scenario: Postcodes from a road are inherited by an attached building
|
||||
Given the scene admin-areas
|
||||
And the named places
|
||||
| osm | class | type | addr+postcode | geometry |
|
||||
| W93 | highway | residential | 86034 | :w2N |
|
||||
And the named places
|
||||
| osm | class | type | geometry |
|
||||
| W22 | building | yes | :building:w2N |
|
||||
When importing
|
||||
Then placex contains
|
||||
| object | postcode | parent_place_id |
|
||||
| W22 | 86034 | W93 |
|
||||
|
||||
Scenario: Postcodes from the lowest admin area are inherited by ways
|
||||
Given the scene admin-areas
|
||||
And the named places
|
||||
| osm | class | type | admin | addr+postcode | geometry |
|
||||
| R1 | boundary | administrative | 6 | 112 | :b0 |
|
||||
| R34 | boundary | administrative | 8 | 112 DE | :b1:E |
|
||||
| R4 | boundary | administrative | 10 | 112 DE 34 | :b2:N |
|
||||
And the named places
|
||||
| osm | class | type | geometry |
|
||||
| W93 | highway | residential | :w2N |
|
||||
When importing
|
||||
Then placex contains
|
||||
| object | postcode |
|
||||
| W93 | 112 DE 34 |
|
||||
|
||||
Scenario: Postcodes from the lowest admin area with postcode are inherited by ways
|
||||
Given the scene admin-areas
|
||||
And the named places
|
||||
| osm | class | type | admin | addr+postcode | geometry |
|
||||
| R1 | boundary | administrative | 6 | 112 | :b0 |
|
||||
| R34 | boundary | administrative | 8 | 112 DE | :b1:E |
|
||||
And the named places
|
||||
| osm | class | type | admin | geometry |
|
||||
| R4 | boundary | administrative | 10 | :b2:N |
|
||||
And the named places
|
||||
| osm | class | type | geometry |
|
||||
| W93 | highway | residential | :w2N |
|
||||
When importing
|
||||
Then placex contains
|
||||
| object | postcode | parent_place_id |
|
||||
| W93 | 112 DE | R4 |
|
||||
|
||||
Scenario: Postcodes from the lowest admin area are inherited by buildings
|
||||
Given the scene admin-areas
|
||||
And the named places
|
||||
| osm | class | type | admin | addr+postcode | geometry |
|
||||
| R1 | boundary | administrative | 6 | 112 | :b0 |
|
||||
| R34 | boundary | administrative | 8 | 112 DE | :b1:E |
|
||||
| R4 | boundary | administrative | 10 | 112 DE 34 | :b2:N |
|
||||
And the named places
|
||||
| osm | class | type | geometry |
|
||||
| W22 | building | yes | :building:w2N |
|
||||
When importing
|
||||
Then placex contains
|
||||
| object | postcode |
|
||||
| W22 | 112 DE 34 |
|
||||
|
||||
Scenario: Roads get postcodes from nearby buildings without other info
|
||||
Given the scene admin-areas
|
||||
And the named places
|
||||
| osm | class | type | geometry |
|
||||
| W93 | highway | residential | :w2N |
|
||||
And the named places
|
||||
| osm | class | type | addr+postcode | geometry |
|
||||
| W22 | building | yes | 445023 | :building:w2N |
|
||||
When importing
|
||||
Then placex contains
|
||||
| object | postcode |
|
||||
| W93 | 445023 |
|
||||
|
||||
@wip
|
||||
Scenario: Postcodes from admin boundaries are preferred over estimated postcodes
|
||||
Given the scene admin-areas
|
||||
And the named places
|
||||
| osm | class | type | admin | addr+postcode | geometry |
|
||||
| R1 | boundary | administrative | 6 | 112 | :b0 |
|
||||
| R34 | boundary | administrative | 8 | 112 DE | :b1:E |
|
||||
| R4 | boundary | administrative | 10 | 112 DE 34 | :b2:N |
|
||||
And the named places
|
||||
| osm | class | type | geometry |
|
||||
| W93 | highway | residential | :w2N |
|
||||
And the named places
|
||||
| osm | class | type | addr+postcode | geometry |
|
||||
| W22 | building | yes | 445023 | :building:w2N |
|
||||
When importing
|
||||
Then placex contains
|
||||
| object | postcode |
|
||||
| W93 | 112 DE 34 |
|
||||
@@ -287,7 +287,7 @@ def import_and_index_data_from_place_table(context):
|
||||
WHERE class='place' and type='houses' and osm_type='W'
|
||||
and ST_GeometryType(geometry) = 'ST_LineString'""")
|
||||
context.db.commit()
|
||||
context.nominatim.run_setup_script('index', 'index-noanalyse')
|
||||
context.nominatim.run_setup_script('calculate-postcodes', 'index', 'index-noanalyse')
|
||||
|
||||
@when("updating places")
|
||||
def update_place_table(context):
|
||||
|
||||
Reference in New Issue
Block a user