]> git.openstreetmap.org Git - nominatim.git/blob - test/bdd/api/reverse/queries.feature
have reverse fall back to country table when no country is found
[nominatim.git] / test / bdd / api / reverse / queries.feature
1 @SQLITE
2 @APIDB
3 Feature: Reverse geocoding
4     Testing the reverse function
5
6     Scenario Outline: Simple reverse-geocoding with no results
7         When sending v1/reverse at <lat>,<lon>
8         Then exactly 0 results are returned
9
10     Examples:
11      | lat      | lon |
12      | 0.0      | 0.0 |
13      | 91.3     | 0.4    |
14      | -700     | 0.4    |
15      | 0.2      | 324.44 |
16      | 0.2      | -180.4 |
17
18
19     Scenario: Unknown countries fall back to default country grid
20         When sending v1/reverse at 45.174,-103.072
21         Then results contain
22           | category | type    | display_name |
23           | place    | country | United States |
24
25
26     @Tiger
27     Scenario: TIGER house number
28         When sending v1/reverse at 32.4752389363,-86.4810198619
29         Then results contain
30           | category | type |
31           | place    | house |
32         And result addresses contain
33           | house_number | road                | postcode | country_code |
34           | 707          | Upper Kingston Road | 36067    | us |
35
36     @Tiger
37     Scenario: No TIGER house number for zoom < 18
38         When sending v1/reverse at 32.4752389363,-86.4810198619
39           | zoom |
40           | 17 |
41         Then results contain
42           | osm_type | category |
43           | way      | highway  |
44         And result addresses contain
45           | road                | postcode | country_code |
46           | Upper Kingston Road | 36067    | us |
47
48     Scenario: Interpolated house number
49         When sending v1/reverse at 47.118533,9.57056562
50         Then results contain
51           | osm_type | category | type |
52           | way      | place    | house |
53         And result addresses contain
54           | house_number | road |
55           | 1019         | Grosssteg |
56
57     Scenario: Address with non-numerical house number
58         When sending v1/reverse at 47.107465,9.52838521614
59         Then result addresses contain
60           | house_number | road |
61           | 39A/B        | Dorfstrasse |
62
63
64     Scenario: Address with numerical house number
65         When sending v1/reverse at 47.168440329479594,9.511551699184338
66         Then result addresses contain
67           | house_number | road |
68           | 6            | Schmedgässle |
69
70     Scenario Outline: Zoom levels below 5 result in country
71         When sending v1/reverse at 47.16,9.51
72          | zoom |
73          | <zoom> |
74         Then results contain
75          | display_name |
76          | Liechtenstein |
77
78     Examples:
79          | zoom |
80          | 0    |
81          | 1    |
82          | 2    |
83          | 3    |
84          | 4    |
85
86     Scenario: When on a street, the closest interpolation is shown
87         When sending v1/reverse at 47.118457166193245,9.570678289621355
88          | zoom |
89          | 18 |
90         Then results contain
91          | display_name |
92          | 1021, Grosssteg, Sücka, Triesenberg, Oberland, 9497, Liechtenstein |
93
94     # github 2214
95     Scenario: Interpolations do not override house numbers when they are closer
96         When sending v1/reverse at 47.11778,9.57255
97          | zoom |
98          | 18 |
99         Then results contain
100          | display_name |
101          | 5, Grosssteg, Steg, Triesenberg, Oberland, 9497, Liechtenstein |
102
103     Scenario: Interpolations do not override house numbers when they are closer (2)
104         When sending v1/reverse at 47.11834,9.57167
105          | zoom |
106          | 18 |
107         Then results contain
108          | display_name |
109          | 3, Grosssteg, Sücka, Triesenberg, Oberland, 9497, Liechtenstein |
110
111     Scenario: When on a street with zoom 18, the closest housenumber is returned
112         When sending v1/reverse at 47.11755503977281,9.572722250405036
113          | zoom |
114          | 18 |
115         Then result addresses contain
116          | house_number |
117          | 7 |