From 1931dbebf6873d4fb5c83fae79c4913f23640d55 Mon Sep 17 00:00:00 2001 From: AntoineLemaire Date: Thu, 20 Oct 2016 10:10:55 +0200 Subject: [PATCH 1/3] Add level to Address::toArray function --- src/Geocoder/Model/Address.php | 0 tests/Geocoder/Tests/Model/AddressTest.php | 70 ++++++++++++++++++++++ 2 files changed, 70 insertions(+) create mode 100644 src/Geocoder/Model/Address.php create mode 100644 tests/Geocoder/Tests/Model/AddressTest.php diff --git a/src/Geocoder/Model/Address.php b/src/Geocoder/Model/Address.php new file mode 100644 index 000000000..e69de29bb diff --git a/tests/Geocoder/Tests/Model/AddressTest.php b/tests/Geocoder/Tests/Model/AddressTest.php new file mode 100644 index 000000000..b4dcaaba8 --- /dev/null +++ b/tests/Geocoder/Tests/Model/AddressTest.php @@ -0,0 +1,70 @@ + + */ +class AddressTest extends TestCase +{ + public function testToArray() + { + $data = [ + 'latitude' => 48.8631507, + 'longitude' => 2.3889114, + 'bounds' => [ + 'south' => 48.8631507, + 'west' => 2.3889114, + 'north' => 48.8631507, + 'east' => 2.388911, + ], + 'streetNumber' => '10', + 'streetName' => 'Avenue Gambetta', + 'postalCode' => '75020', + 'locality' => 'Paris', + 'subLocality' => '20e Arrondissement', + 'adminLevels' => [1 => ['name' => 'Ile-de-France', 'code' => 'Ile-de-France', 'level' => 1]], + 'country' => 'France', + 'countryCode' => 'FR', + 'timezone' => null, + ]; + + $address = $this->createAddress($data); + + $this->assertSame($data, $address->toArray()); + } + + public function testCreateFromArrayFromToArray() + { + $factory = new AddressFactory(); + + $data = [ + 'latitude' => 48.8631507, + 'longitude' => 2.3889114, + 'bounds' => [ + 'south' => 48.8631507, + 'west' => 2.3889114, + 'north' => 48.8631507, + 'east' => 2.388911, + ], + 'streetNumber' => '10', + 'streetName' => 'Avenue Gambetta', + 'postalCode' => '75020', + 'locality' => 'Paris', + 'subLocality' => '20e Arrondissement', + 'adminLevels' => [1 => ['name' => 'Ile-de-France', 'code' => 'Ile-de-France', 'level' => 1]], + 'country' => 'France', + 'countryCode' => 'FR', + 'timezone' => null, + ]; + + $address = $this->createAddress($data); + $array = $address->toArray(); + $addresses = $factory->createFromArray([$array]); + + $this->assertEquals($address, $addresses->get(0)); + } +} From b09b0773710b9d27a8ead9fb3502680d33fa3359 Mon Sep 17 00:00:00 2001 From: Tobias Nyholm Date: Sat, 20 May 2017 11:16:46 +0200 Subject: [PATCH 2/3] Rebased PR --- src/Common/Model/Address.php | 1 + src/Common/Tests/Model/AddressTest.php | 31 ++++++++++ src/Geocoder/Model/Address.php | 0 tests/Geocoder/Tests/Model/AddressTest.php | 70 ---------------------- 4 files changed, 32 insertions(+), 70 deletions(-) delete mode 100644 src/Geocoder/Model/Address.php delete mode 100644 tests/Geocoder/Tests/Model/AddressTest.php diff --git a/src/Common/Model/Address.php b/src/Common/Model/Address.php index 665b4dff4..126b0352f 100644 --- a/src/Common/Model/Address.php +++ b/src/Common/Model/Address.php @@ -193,6 +193,7 @@ public function toArray() $adminLevels[$adminLevel->getLevel()] = [ 'name' => $adminLevel->getName(), 'code' => $adminLevel->getCode(), + 'level' => $adminLevel->getLevel(), ]; } diff --git a/src/Common/Tests/Model/AddressTest.php b/src/Common/Tests/Model/AddressTest.php index 0c3519931..2fabe1dbf 100644 --- a/src/Common/Tests/Model/AddressTest.php +++ b/src/Common/Tests/Model/AddressTest.php @@ -11,7 +11,11 @@ namespace Geocoder\Tests\Model; use Geocoder\Model\Address; +use Geocoder\Model\LocationFactory; +/** + * @author Antoine Lemaire + */ class AddressTest extends \PHPUnit_Framework_TestCase { public function testDumpEmptyAddress() @@ -39,4 +43,31 @@ public function testDumpEmptyAddress() $address = new Address(); $this->assertEquals($address->toArray(), $expected); } + + public function testToArray() + { + $data = [ + 'latitude' => 48.8631507, + 'longitude' => 2.3889114, + 'bounds' => [ + 'south' => 48.8631507, + 'west' => 2.3889114, + 'north' => 48.8631507, + 'east' => 2.388911, + ], + 'streetNumber' => '10', + 'streetName' => 'Avenue Gambetta', + 'postalCode' => '75020', + 'locality' => 'Paris', + 'subLocality' => '20e Arrondissement', + 'adminLevels' => [1 => ['name' => 'Ile-de-France', 'code' => 'Ile-de-France', 'level' => 1]], + 'country' => 'France', + 'countryCode' => 'FR', + 'timezone' => null, + ]; + + $address = LocationFactory::createLocation($data); + + $this->assertSame($data, $address->toArray()); + } } diff --git a/src/Geocoder/Model/Address.php b/src/Geocoder/Model/Address.php deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/Geocoder/Tests/Model/AddressTest.php b/tests/Geocoder/Tests/Model/AddressTest.php deleted file mode 100644 index b4dcaaba8..000000000 --- a/tests/Geocoder/Tests/Model/AddressTest.php +++ /dev/null @@ -1,70 +0,0 @@ - - */ -class AddressTest extends TestCase -{ - public function testToArray() - { - $data = [ - 'latitude' => 48.8631507, - 'longitude' => 2.3889114, - 'bounds' => [ - 'south' => 48.8631507, - 'west' => 2.3889114, - 'north' => 48.8631507, - 'east' => 2.388911, - ], - 'streetNumber' => '10', - 'streetName' => 'Avenue Gambetta', - 'postalCode' => '75020', - 'locality' => 'Paris', - 'subLocality' => '20e Arrondissement', - 'adminLevels' => [1 => ['name' => 'Ile-de-France', 'code' => 'Ile-de-France', 'level' => 1]], - 'country' => 'France', - 'countryCode' => 'FR', - 'timezone' => null, - ]; - - $address = $this->createAddress($data); - - $this->assertSame($data, $address->toArray()); - } - - public function testCreateFromArrayFromToArray() - { - $factory = new AddressFactory(); - - $data = [ - 'latitude' => 48.8631507, - 'longitude' => 2.3889114, - 'bounds' => [ - 'south' => 48.8631507, - 'west' => 2.3889114, - 'north' => 48.8631507, - 'east' => 2.388911, - ], - 'streetNumber' => '10', - 'streetName' => 'Avenue Gambetta', - 'postalCode' => '75020', - 'locality' => 'Paris', - 'subLocality' => '20e Arrondissement', - 'adminLevels' => [1 => ['name' => 'Ile-de-France', 'code' => 'Ile-de-France', 'level' => 1]], - 'country' => 'France', - 'countryCode' => 'FR', - 'timezone' => null, - ]; - - $address = $this->createAddress($data); - $array = $address->toArray(); - $addresses = $factory->createFromArray([$array]); - - $this->assertEquals($address, $addresses->get(0)); - } -} From b8fcf270cb36ab6c63a559e2c320408f9d18cbe4 Mon Sep 17 00:00:00 2001 From: Tobias Nyholm Date: Sat, 20 May 2017 11:18:51 +0200 Subject: [PATCH 3/3] cs --- src/Common/Tests/Model/AddressTest.php | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/Common/Tests/Model/AddressTest.php b/src/Common/Tests/Model/AddressTest.php index 2fabe1dbf..9863e3466 100644 --- a/src/Common/Tests/Model/AddressTest.php +++ b/src/Common/Tests/Model/AddressTest.php @@ -47,23 +47,23 @@ public function testDumpEmptyAddress() public function testToArray() { $data = [ - 'latitude' => 48.8631507, + 'latitude' => 48.8631507, 'longitude' => 2.3889114, - 'bounds' => [ + 'bounds' => [ 'south' => 48.8631507, - 'west' => 2.3889114, + 'west' => 2.3889114, 'north' => 48.8631507, - 'east' => 2.388911, + 'east' => 2.388911, ], 'streetNumber' => '10', - 'streetName' => 'Avenue Gambetta', - 'postalCode' => '75020', - 'locality' => 'Paris', - 'subLocality' => '20e Arrondissement', - 'adminLevels' => [1 => ['name' => 'Ile-de-France', 'code' => 'Ile-de-France', 'level' => 1]], - 'country' => 'France', - 'countryCode' => 'FR', - 'timezone' => null, + 'streetName' => 'Avenue Gambetta', + 'postalCode' => '75020', + 'locality' => 'Paris', + 'subLocality' => '20e Arrondissement', + 'adminLevels' => [1 => ['name' => 'Ile-de-France', 'code' => 'Ile-de-France', 'level' => 1]], + 'country' => 'France', + 'countryCode' => 'FR', + 'timezone' => null, ]; $address = LocationFactory::createLocation($data);