public function testGetGeocodedDataWithRealPlaceWithLocale() { if (!isset($_SERVER['GEONAMES_USERNAME'])) { $this->markTestSkipped('You need to configure the GEONAMES_USERNAME value in phpunit.xml'); } $provider = new GeonamesProvider($this->getAdapter(), $_SERVER['GEONAMES_USERNAME'], 'it_IT'); $results = $provider->getGeocodedData('London'); $this->assertInternalType('array', $results); $this->assertCount(5, $results); $this->assertInternalType('array', $results[0]); $this->assertEquals(51.50853, $results[0]['latitude'], '', 0.01); $this->assertEquals(-0.12574, $results[0]['longitude'], '', 0.01); $this->assertArrayHasKey('south', $results[0]['bounds']); $this->assertArrayHasKey('west', $results[0]['bounds']); $this->assertArrayHasKey('north', $results[0]['bounds']); $this->assertArrayHasKey('east', $results[0]['bounds']); $this->assertEquals(51.15169, $results[0]['bounds']['south'], '', 0.01); $this->assertEquals(-0.70361, $results[0]['bounds']['west'], '', 0.01); $this->assertEquals(51.86537, $results[0]['bounds']['north'], '', 0.01); $this->assertEquals(0.45212, $results[0]['bounds']['east'], '', 0.01); $this->assertEquals('Londra', $results[0]['city']); $this->assertEquals('Greater London', $results[0]['county']); $this->assertEquals('Inghilterra', $results[0]['region']); $this->assertEquals('Regno Unito', $results[0]['country']); $this->assertEquals('GB', $results[0]['countryCode']); $this->assertEquals('Europe/London', $results[0]['timezone']); $this->assertInternalType('array', $results[1]); $this->assertEquals(-33.015285093464, $results[1]['latitude'], '', 0.01); $this->assertEquals(27.911624908447, $results[1]['longitude'], '', 0.01); $this->assertArrayHasKey('south', $results[1]['bounds']); $this->assertArrayHasKey('west', $results[1]['bounds']); $this->assertArrayHasKey('north', $results[1]['bounds']); $this->assertArrayHasKey('east', $results[1]['bounds']); $this->assertEquals(-33.104996458003, $results[1]['bounds']['south'], '', 0.01); $this->assertEquals(27.804746435655, $results[1]['bounds']['west'], '', 0.01); $this->assertEquals(-32.925573728925, $results[1]['bounds']['north'], '', 0.01); $this->assertEquals(28.018503381239, $results[1]['bounds']['east'], '', 0.01); $this->assertEquals('East London', $results[1]['city']); $this->assertEquals('Buffalo City Metropolitan Municipality', $results[1]['county']); $this->assertEquals('Eastern Cape', $results[1]['region']); $this->assertEquals('Sudafrica', $results[1]['country']); $this->assertEquals('ZA', $results[1]['countryCode']); $this->assertEquals('Africa/Johannesburg', $results[1]['timezone']); $this->assertInternalType('array', $results[2]); $this->assertEquals(51.512788890295, $results[2]['latitude'], '', 0.01); $this->assertEquals(-0.091838836669922, $results[2]['longitude'], '', 0.01); $this->assertArrayHasKey('south', $results[2]['bounds']); $this->assertArrayHasKey('west', $results[2]['bounds']); $this->assertArrayHasKey('north', $results[2]['bounds']); $this->assertArrayHasKey('east', $results[2]['bounds']); $this->assertEquals(51.155949512764, $results[2]['bounds']['south'], '', 0.01); $this->assertEquals(-0.66976046752962, $results[2]['bounds']['west'], '', 0.01); $this->assertEquals(51.869628267826, $results[2]['bounds']['north'], '', 0.01); $this->assertEquals(0.48608279418978, $results[2]['bounds']['east'], '', 0.01); $this->assertEquals('Città di Londra', $results[2]['city']); $this->assertEquals('Greater London', $results[2]['county']); $this->assertEquals('Inghilterra', $results[2]['region']); $this->assertEquals('Regno Unito', $results[2]['country']); $this->assertEquals('GB', $results[2]['countryCode']); $this->assertEquals('Europe/London', $results[2]['timezone']); $this->assertInternalType('array', $results[3]); $this->assertEquals(42.983389283, $results[3]['latitude'], '', 0.01); $this->assertEquals(-81.233042387, $results[3]['longitude'], '', 0.01); $this->assertArrayHasKey('south', $results[3]['bounds']); $this->assertArrayHasKey('west', $results[3]['bounds']); $this->assertArrayHasKey('north', $results[3]['bounds']); $this->assertArrayHasKey('east', $results[3]['bounds']); $this->assertEquals(42.907075642763, $results[3]['bounds']['south'], '', 0.01); $this->assertEquals(-81.33748967646299, $results[3]['bounds']['west'], '', 0.01); $this->assertEquals(43.059702923237, $results[3]['bounds']['north'], '', 0.01); $this->assertEquals(-81.128595097537, $results[3]['bounds']['east'], '', 0.01); $this->assertEquals('London', $results[3]['city']); $this->assertEquals('', $results[3]['county']); $this->assertEquals('Ontario', $results[3]['region']); $this->assertEquals('Canada', $results[3]['country']); $this->assertEquals('CA', $results[3]['countryCode']); $this->assertEquals('America/Toronto', $results[3]['timezone']); $this->assertInternalType('array', $results[4]); $this->assertEquals(41.3556539, $results[4]['latitude'], '', 0.01); $this->assertEquals(-72.0995209, $results[4]['longitude'], '', 0.01); $this->assertArrayHasKey('south', $results[4]['bounds']); $this->assertArrayHasKey('west', $results[4]['bounds']); $this->assertArrayHasKey('north', $results[4]['bounds']); $this->assertArrayHasKey('east', $results[4]['bounds']); $this->assertEquals(41.334087887904, $results[4]['bounds']['south'], '', 0.01); $this->assertEquals(-72.128261254846, $results[4]['bounds']['west'], '', 0.01); $this->assertEquals(41.377219912096, $results[4]['bounds']['north'], '', 0.01); $this->assertEquals(-72.07078054515399, $results[4]['bounds']['east'], '', 0.01); $this->assertEquals('New London', $results[4]['city']); $this->assertEquals('Contea di New London', $results[4]['county']); $this->assertEquals('Connecticut', $results[4]['region']); $this->assertEquals('Stati Uniti', $results[4]['country']); $this->assertEquals('US', $results[4]['countryCode']); $this->assertEquals('America/New_York', $results[4]['timezone']); }
public function testGetGeocodedDataWithRealPlaceWithLocale() { if (!isset($_SERVER['GEONAMES_USERNAME'])) { $this->markTestSkipped('You need to configure the GEONAMES_USERNAME value in phpunit.xml'); } $provider = new GeonamesProvider(new \Geocoder\HttpAdapter\CurlHttpAdapter(), $_SERVER['GEONAMES_USERNAME'], 'it_IT'); $result = $provider->getGeocodedData('London'); $this->assertEquals(51.50853, $result['latitude'], '', 0.01); $this->assertEquals(-0.12574, $result['longitude'], '', 0.01); $this->assertArrayHasKey('south', $result['bounds']); $this->assertArrayHasKey('west', $result['bounds']); $this->assertArrayHasKey('north', $result['bounds']); $this->assertArrayHasKey('east', $result['bounds']); $this->assertEquals(51.15169, $result['bounds']['south'], '', 0.01); $this->assertEquals(-0.70361, $result['bounds']['west'], '', 0.01); $this->assertEquals(51.86537, $result['bounds']['north'], '', 0.01); $this->assertEquals(0.45212, $result['bounds']['east'], '', 0.01); $this->assertEquals('Londra', $result['city']); $this->assertEquals('Greater London', $result['county']); // the webservice returns the same as default $this->assertEquals('Inghilterra', $result['region']); $this->assertEquals('Regno Unito', $result['country']); $this->assertEquals('GB', $result['countryCode']); $this->assertEquals('Europe/London', $result['timezone']); }