]> git.openstreetmap.org Git - nominatim.git/blob - test/bdd/api/reverse/v1_json.feature
Merge remote-tracking branch 'upstream/master'
[nominatim.git] / test / bdd / api / reverse / v1_json.feature
1 @SQLITE
2 @APIDB
3 Feature: Json output for Reverse API
4     Testing correctness of json and jsonv2 output (API version v1).
5
6     Scenario Outline: OSM result with and without addresses
7         When sending v1/reverse at 47.066,9.504 with format json
8           | addressdetails |
9           | <has_address>  |
10         Then result has <attributes> address
11         When sending v1/reverse at 47.066,9.504 with format jsonv2
12           | addressdetails |
13           | <has_address>  |
14         Then result has <attributes> address
15
16         Examples:
17           | has_address | attributes     |
18           | 1           | attributes     |
19           | 0           | not attributes |
20
21     Scenario Outline: Simple OSM result
22         When sending v1/reverse at 47.066,9.504 with format <format>
23         Then result has attributes place_id
24         And results contain
25           | licence |
26           | ^Data © OpenStreetMap contributors, ODbL 1.0. https?://osm.org/copyright$ |
27         And results contain
28           | osm_type | osm_id     |
29           | node     | 6522627624 |
30         And results contain
31           | centroid             | boundingbox |
32           | 9.5036065 47.0660892 | ['47.0660392', '47.0661392', '9.5035565', '9.5036565'] |
33         And results contain
34           | display_name |
35           | Dorfbäckerei Herrmann, 29, Gnetsch, Mäls, Balzers, Oberland, 9496, Liechtenstein |
36         And result has not attributes namedetails,extratags
37
38         Examples:
39           | format |
40           | json   |
41           | jsonv2 |
42
43     Scenario: Extra attributes of jsonv2 result
44         When sending v1/reverse at 47.066,9.504 with format jsonv2
45         Then result has attributes importance
46         Then results contain
47           | category | type   | name                  | place_rank | addresstype |
48           | shop     | bakery | Dorfbäckerei Herrmann | 30         | shop        |
49
50
51     @Tiger
52     Scenario: Tiger address
53         When sending v1/reverse at 32.4752389363,-86.4810198619 with format jsonv2
54         Then results contain
55          | osm_type | osm_id    | category | type  | addresstype  |
56          | way      | 396009653 | place    | house | place        |
57
58
59     Scenario Outline: Interpolation address
60         When sending v1/reverse at 47.118533,9.57056562 with format <format>
61         Then results contain
62           | osm_type | osm_id |
63           | way      | 1      |
64         And results contain
65           | centroid                | boundingbox |
66           | 9.57054676 47.118545392 | ^\['47.118495\d*', '47.118595\d*', '9.570496\d*', '9.570596\d*'\] |
67         And results contain
68           | display_name |
69           | 1019, Grosssteg, Sücka, Triesenberg, Oberland, 9497, Liechtenstein |
70
71         Examples:
72           | format |
73           | json   |
74           | jsonv2 |
75
76
77     Scenario Outline: Output of geojson
78        When sending v1/reverse at 47.06597,9.50467 with format <format>
79           | param           | value |
80           | polygon_geojson | 1     |
81        Then results contain in field geojson
82           | type       | coordinates |
83           | LineString | [[9.5039353, 47.0657546], [9.5040437, 47.0657781], [9.5040808, 47.065787], [9.5054298, 47.0661407]] |
84
85        Examples:
86           | format |
87           | json   |
88           | jsonv2 |
89
90
91     Scenario Outline: Output of WKT
92        When sending v1/reverse at 47.06597,9.50467 with format <format>
93           | param        | value |
94           | polygon_text | 1     |
95        Then results contain
96           | geotext |
97           | ^LINESTRING\(9.5039353 47.0657546, ?9.5040437 47.0657781, ?9.5040808 47.065787, ?9.5054298 47.0661407\) |
98
99        Examples:
100           | format |
101           | json   |
102           | jsonv2 |
103
104
105     Scenario Outline: Output of SVG
106        When sending v1/reverse at 47.06597,9.50467 with format <format>
107           | param       | value |
108           | polygon_svg | 1     |
109        Then results contain
110           | svg |
111           | M 9.5039353 -47.0657546 L 9.5040437 -47.0657781 9.5040808 -47.065787 9.5054298 -47.0661407 |
112
113        Examples:
114           | format |
115           | json   |
116           | jsonv2 |
117
118
119     Scenario Outline: Output of KML
120        When sending v1/reverse at 47.06597,9.50467 with format <format>
121           | param       | value |
122           | polygon_kml | 1     |
123        Then results contain
124           | geokml |
125           | ^<LineString><coordinates>9.5039\d*,47.0657\d* 9.5040\d*,47.0657\d* 9.5040\d*,47.065\d* 9.5054\d*,47.0661\d*</coordinates></LineString> |
126
127        Examples:
128           | format |
129           | json   |
130           | jsonv2 |