Skip to content

Commit 4d092d7

Browse files
committed
Capturing the country subdivision from the response
1 parent b7d58ee commit 4d092d7

File tree

2 files changed

+16
-0
lines changed

2 files changed

+16
-0
lines changed

src/Provider/AzureMaps/AzureMaps.php

+14
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,13 @@ private function formatGeocodeResponse(\stdClass $response): array
227227
$builder->setPostalCode($result->address->extendedPostalCode ?? null);
228228
$builder->setLocality($result->address->municipality ?? null);
229229

230+
if (isset($result->address->countrySubdivision)) {
231+
$builder->addAdminLevel(
232+
1,
233+
$result->address->countrySubdivision,
234+
);
235+
}
236+
230237
return $builder->build();
231238
}, $response->results);
232239
}
@@ -266,6 +273,13 @@ private function formatReverseGeocodeResponse(\stdClass $response): array
266273
$builder->setPostalCode($address->address->extendedPostalCode ?? null);
267274
$builder->setLocality($address->address->municipality ?? null);
268275

276+
if (isset($address->address->countrySubdivision)) {
277+
$builder->addAdminLevel(
278+
1,
279+
$address->address->countrySubdivision,
280+
);
281+
}
282+
269283
return $builder->build();
270284
}, $response->addresses));
271285
}

src/Provider/AzureMaps/Tests/AzureMapsTest.php

+2
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ public function testGeocodeWithRealAddress(): void
6262
$this->assertEquals(6266924, $result->getPostalCode());
6363
$this->assertEquals('Israel', $result->getCountry()->getName());
6464
$this->assertEquals('IL', $result->getCountry()->getCode());
65+
$this->assertEquals('Tel Aviv District', $result->getAdminLevels()->get(1)->getName());
6566
}
6667

6768
public function testReverseWithRealCoordinates(): void
@@ -92,6 +93,7 @@ public function testReverseWithRealCoordinates(): void
9293
$this->assertEquals(6266924, $result->getPostalCode());
9394
$this->assertEquals('Israel', $result->getCountry()->getName());
9495
$this->assertEquals('IL', $result->getCountry()->getCode());
96+
$this->assertEquals('Tel Aviv District', $result->getAdminLevels()->get(1)->getName());
9597
}
9698

9799
public function testGeocodeIncludesMunicipality(): void

0 commit comments

Comments
 (0)