]> git.openstreetmap.org Git - nominatim.git/blobdiff - test/bdd/db/import/postcodes.feature
Merge remote-tracking branch 'upstream/master'
[nominatim.git] / test / bdd / db / import / postcodes.feature
index be469fe6b158b6141a667b5966f1a9ecdf531117..4c839db00143e004b28f5d98dd6890102475e5e0 100644 (file)
@@ -2,7 +2,7 @@
 Feature: Import of postcodes
     Tests for postcode estimation
 
 Feature: Import of postcodes
     Tests for postcode estimation
 
-    Scenario: Postcodes on the object are prefered over those on the address
+    Scenario: Postcodes on the object are preferred over those on the address
         Given the scene admin-areas
         And the named places
             | osm | class    | type           | admin | addr+postcode | geometry |
         Given the scene admin-areas
         And the named places
             | osm | class    | type           | admin | addr+postcode | geometry |
@@ -82,7 +82,7 @@ Feature: Import of postcodes
             | object | postcode  |
             | W22    | 112 DE 34 |
 
             | object | postcode  |
             | W22    | 112 DE 34 |
 
-    Scenario: Roads get postcodes from nearby buildings without other info
+    Scenario: Roads get postcodes from nearby named buildings without other info
         Given the scene admin-areas
         And the named places
             | osm | class    | type           | geometry |
         Given the scene admin-areas
         And the named places
             | osm | class    | type           | geometry |
@@ -95,7 +95,19 @@ Feature: Import of postcodes
             | object | postcode |
             | W93    | 445023   |
 
             | object | postcode |
             | W93    | 445023   |
 
-    @wip
+    Scenario: Roads get postcodes from nearby unnamed 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 | place    | postcode    | 445023        | :building:w2N |
+        When importing
+        Then placex contains
+            | object | postcode |
+            | W93    | 445023   |
+
     Scenario: Postcodes from admin boundaries are preferred over estimated postcodes
         Given the scene admin-areas
         And the named places
     Scenario: Postcodes from admin boundaries are preferred over estimated postcodes
         Given the scene admin-areas
         And the named places
@@ -113,3 +125,32 @@ Feature: Import of postcodes
         Then placex contains
             | object | postcode  |
             | W93    | 112 DE 34 |
         Then placex contains
             | object | postcode  |
             | W93    | 112 DE 34 |
+
+    Scenario: Postcodes are added to the postcode and word table
+        Given the places
+           | osm | class | type  | addr+postcode | addr+housenumber | geometry |
+           | N34 | place | house | 01982         | 111              |country:de |
+        When importing
+        Then location_postcode contains exactly
+           | country | postcode | geometry |
+           | de      | 01982    | country:de |
+        And there are word tokens for postcodes 01982
+
+    Scenario: Different postcodes with the same normalization can both be found
+        Given the places
+           | osm | class | type  | addr+postcode | addr+housenumber | geometry |
+           | N34 | place | house | EH4 7EA       | 111              | country:gb |
+           | N35 | place | house | E4 7EA        | 111              | country:gb |
+        When importing
+        Then location_postcode contains exactly
+           | country | postcode | geometry |
+           | gb      | EH4 7EA  | country:gb |
+           | gb      | E4 7EA   | country:gb |
+        When sending search query "EH4 7EA"
+        Then results contain
+           | type     | display_name |
+           | postcode | EH4 7EA      |
+        When sending search query "E4 7EA"
+        Then results contain
+           | type     | display_name |
+           | postcode | E4 7EA      |