2 Feature: Update of relations by osm2pgsql
3 Testing relation update by osm2pgsql.
5 Scenario: Remove all members of a relation
8 | 1 | 'amenity' : 'prison', 'name' : 'foo'
17 | 2 | 'ref' : '45' | 200 201 202 203 200
18 Given the osm relations:
20 | 1 | 'type' : 'multipolygon', 'tourism' : 'hotel', 'name' : 'XZ' | W2
22 Then table place contains
23 | object | class | type | name
24 | R1 | tourism | hotel | 'name' : 'XZ'
25 Given the osm relations:
26 | action | id | tags | members
27 | M | 1 | 'type' : 'multipolygon', 'tourism' : 'hotel', 'name' : 'XZ' | N1
28 When updating osm data
29 Then table place has no entry for R1
32 Scenario: Change type of a relation
41 | 2 | 'ref' : '45' | 200 201 202 203 200
42 Given the osm relations:
44 | 1 | 'type' : 'multipolygon', 'tourism' : 'hotel', 'name' : 'XZ' | W2
46 Then table place contains
47 | object | class | type | name
48 | R1 | tourism | hotel | 'name' : 'XZ'
49 Given the osm relations:
50 | action | id | tags | members
51 | M | 1 | 'type' : 'multipolygon', 'amenity' : 'prison', 'name' : 'XZ' | W2
52 When updating osm data
53 Then table place has no entry for R1:tourism
54 And table place contains
55 | object | class | type | name
56 | R1 | amenity | prison | 'name' : 'XZ'
58 Scenario: Change name of a relation
67 | 2 | 'ref' : '45' | 200 201 202 203 200
68 Given the osm relations:
70 | 1 | 'type' : 'multipolygon', 'tourism' : 'hotel', 'name' : 'AB' | W2
72 Then table place contains
73 | object | class | type | name
74 | R1 | tourism | hotel | 'name' : 'AB'
75 Given the osm relations:
76 | action | id | tags | members
77 | M | 1 | 'type' : 'multipolygon', 'tourism' : 'hotel', 'name' : 'XZ' | W2
78 When updating osm data
79 Then table place contains
80 | object | class | type | name
81 | R1 | tourism | hotel | 'name' : 'XZ'
84 Scenario: Change type of a relation into something unknown
93 | 2 | 'ref' : '45' | 200 201 202 203 200
94 Given the osm relations:
96 | 1 | 'type' : 'multipolygon', 'tourism' : 'hotel', 'name' : 'XZ' | W2
98 Then table place contains
99 | object | class | type | name
100 | R1 | tourism | hotel | 'name' : 'XZ'
101 Given the osm relations:
102 | action | id | tags | members
103 | M | 1 | 'type' : 'multipolygon', 'amenities' : 'prison', 'name' : 'XZ' | W2
104 When updating osm data
105 Then table place has no entry for R1
107 Scenario: Type tag is removed
112 | 202 | 0.0001 0.0001
116 | 2 | 'ref' : '45' | 200 201 202 203 200
117 Given the osm relations:
118 | id | tags | members
119 | 1 | 'type' : 'multipolygon', 'tourism' : 'hotel', 'name' : 'XZ' | W2
120 When loading osm data
121 Then table place contains
122 | object | class | type | name
123 | R1 | tourism | hotel | 'name' : 'XZ'
124 Given the osm relations:
125 | action | id | tags | members
126 | M | 1 | 'tourism' : 'hotel', 'name' : 'XZ' | W2
127 When updating osm data
128 Then table place has no entry for R1
130 Scenario: Type tag is renamed to something unknown
135 | 202 | 0.0001 0.0001
139 | 2 | 'ref' : '45' | 200 201 202 203 200
140 Given the osm relations:
141 | id | tags | members
142 | 1 | 'type' : 'multipolygon', 'tourism' : 'hotel', 'name' : 'XZ' | W2
143 When loading osm data
144 Then table place contains
145 | object | class | type | name
146 | R1 | tourism | hotel | 'name' : 'XZ'
147 Given the osm relations:
148 | action | id | tags | members
149 | M | 1 | 'type' : 'multipolygonn', 'tourism' : 'hotel', 'name' : 'XZ' | W2
150 When updating osm data
151 Then table place has no entry for R1