diff --git a/src/Provider/AzureMaps/AzureMaps.php b/src/Provider/AzureMaps/AzureMaps.php index e88a8caa9..8d7ef8b75 100644 --- a/src/Provider/AzureMaps/AzureMaps.php +++ b/src/Provider/AzureMaps/AzureMaps.php @@ -227,6 +227,13 @@ private function formatGeocodeResponse(\stdClass $response): array $builder->setPostalCode($result->address->extendedPostalCode ?? null); $builder->setLocality($result->address->municipality ?? null); + if (isset($result->address->countrySubdivision)) { + $builder->addAdminLevel( + 1, + $result->address->countrySubdivision, + ); + } + return $builder->build(); }, $response->results); } @@ -266,6 +273,13 @@ private function formatReverseGeocodeResponse(\stdClass $response): array $builder->setPostalCode($address->address->extendedPostalCode ?? null); $builder->setLocality($address->address->municipality ?? null); + if (isset($address->address->countrySubdivision)) { + $builder->addAdminLevel( + 1, + $address->address->countrySubdivision, + ); + } + return $builder->build(); }, $response->addresses)); } diff --git a/src/Provider/AzureMaps/Tests/AzureMapsTest.php b/src/Provider/AzureMaps/Tests/AzureMapsTest.php index 0776c83ea..f7f8ac9de 100644 --- a/src/Provider/AzureMaps/Tests/AzureMapsTest.php +++ b/src/Provider/AzureMaps/Tests/AzureMapsTest.php @@ -62,6 +62,7 @@ public function testGeocodeWithRealAddress(): void $this->assertEquals(6266924, $result->getPostalCode()); $this->assertEquals('Israel', $result->getCountry()->getName()); $this->assertEquals('IL', $result->getCountry()->getCode()); + $this->assertEquals('Tel Aviv District', $result->getAdminLevels()->get(1)->getName()); } public function testReverseWithRealCoordinates(): void @@ -92,6 +93,7 @@ public function testReverseWithRealCoordinates(): void $this->assertEquals(6266924, $result->getPostalCode()); $this->assertEquals('Israel', $result->getCountry()->getName()); $this->assertEquals('IL', $result->getCountry()->getCode()); + $this->assertEquals('Tel Aviv District', $result->getAdminLevels()->get(1)->getName()); } public function testGeocodeIncludesMunicipality(): void