@@ -107,4 +107,60 @@ public function testGeocodeOnlyCityQuery()
107
107
$ this ->assertEquals ('77100 ' , $ result ->getPostalCode ());
108
108
$ this ->assertEquals ('Meaux ' , $ result ->getLocality ());
109
109
}
110
+
111
+ public function testGeocodeHouseNumberTypeQuery ()
112
+ {
113
+ $ provider = Addok::withBANServer ($ this ->getHttpClient (), 'Geocoder PHP/Addok Provider/Addok Test ' );
114
+ $ results = $ provider ->geocodeQuery (
115
+ GeocodeQuery::create ('20 avenue Kléber, Paris ' )->withData ('type ' , Addok::TYPE_HOUSENUMBER )
116
+ );
117
+
118
+ $ this ->assertInstanceOf ('Geocoder\Model\AddressCollection ' , $ results );
119
+
120
+ /** @var \Geocoder\Model\Address $result */
121
+ $ result = $ results ->first ();
122
+ $ this ->assertInstanceOf ('\Geocoder\Model\Address ' , $ result );
123
+ $ this ->assertEquals ('20 ' , $ result ->getStreetNumber ());
124
+ $ this ->assertEquals ('Avenue Kléber ' , $ result ->getStreetName ());
125
+ $ this ->assertEquals ('75016 ' , $ result ->getPostalCode ());
126
+ $ this ->assertEquals ('Paris ' , $ result ->getLocality ());
127
+ }
128
+
129
+ public function testGeocodeStreetTypeQuery ()
130
+ {
131
+ $ provider = Addok::withBANServer ($ this ->getHttpClient (), 'Geocoder PHP/Addok Provider/Addok Test ' );
132
+ $ results = $ provider ->geocodeQuery (
133
+ GeocodeQuery::create ('20 avenue Kléber, Paris ' )->withData ('type ' , Addok::TYPE_STREET )
134
+ );
135
+
136
+ $ this ->assertInstanceOf ('Geocoder\Model\AddressCollection ' , $ results );
137
+
138
+ /** @var \Geocoder\Model\Address $result */
139
+ $ result = $ results ->first ();
140
+ $ this ->assertInstanceOf ('\Geocoder\Model\Address ' , $ result );
141
+ $ this ->assertNull ($ result ->getStreetNumber ());
142
+ $ this ->assertEquals ('Avenue Kléber ' , $ result ->getStreetName ());
143
+ $ this ->assertEquals ('75016 ' , $ result ->getPostalCode ());
144
+ $ this ->assertEquals ('Paris ' , $ result ->getLocality ());
145
+ }
146
+
147
+ public function testGeocodeLocalityQuery ()
148
+ {
149
+ $ provider = Addok::withBANServer ($ this ->getHttpClient (), 'Geocoder PHP/Addok Provider/Addok Test ' );
150
+ $ results = $ provider ->geocodeQuery (
151
+ GeocodeQuery::create ('20 avenue Kléber, Paris ' )->withData ('type ' , Addok::TYPE_LOCALITY )
152
+ );
153
+
154
+ $ this ->assertInstanceOf ('Geocoder\Model\AddressCollection ' , $ results );
155
+
156
+ /** @var \Geocoder\Model\Address $result */
157
+ $ result = $ results ->first ();
158
+ $ this ->assertInstanceOf ('\Geocoder\Model\Address ' , $ result );
159
+ $ this ->assertNull ($ result ->getStreetNumber ());
160
+ $ this ->assertNull ($ result ->getStreetName ());
161
+ $ this ->assertEquals (48.871759 , $ result ->getCoordinates ()->getLatitude (), '' , 0.00001 );
162
+ $ this ->assertEquals (2.294253 , $ result ->getCoordinates ()->getLongitude (), '' , 0.00001 );
163
+ $ this ->assertEquals ('75016 ' , $ result ->getPostalCode ());
164
+ $ this ->assertEquals ('Paris ' , $ result ->getLocality ());
165
+ }
110
166
}
0 commit comments