geocoder-php/provider-integration-tests
Integration test suite for Geocoder PHP providers. Shared tests and fixtures to validate provider implementations and ensure consistent behavior across services, making it easier to verify compliance and prevent regressions.
geocoder-php/geocoder as a dependency.GoogleProvider, OpenStreetMapProvider).geocoder-php/geocoder) for geocoding logic.composer require geocoder-php/geocoder
composer require geocoder-php/provider-integration-tests
config/services.php or a dedicated config file:
'geocoder' => [
'providers' => [
'google_maps' => [
'key' => env('GOOGLE_MAPS_API_KEY'),
'http_adapter' => 'guzzle', // or 'laravel'
],
'openstreetmap' => [],
],
],
vendor/bin/phpunit --filter ProviderTest
phpunit.xml:
<testsuites>
<testsuite name="Geocoder Providers">
<directory>./vendor/geocoder-php/provider-integration-tests</directory>
</testsuite>
</testsuites>
Mockery or Laravel’s Http::fake())..env variables for API keys (e.g., GOOGLE_MAPS_API_KEY).geocoder-php/geocoder and provider-integration-tests to specific versions to avoid breaking changes.403 Forbidden for missing API keys) require environment-specific configs.--parallel flag).| Failure Type | Impact | Mitigation |
|---|---|---|
| Provider API Outage | Geocoding fails in production. | Use fallback providers (e.g., OSM if Google fails). |
| Rate Limit Exceeded | Tests fail; CI pipeline blocked. | Implement exponential backoff in tests. |
| API Key Revoked | Tests break; no alerts. | Monitor API key usage; rotate keys. |
| Test Flakiness | Unreliable CI/CD. | Add retry logic or ignore non-critical failures. |
| Provider Deprecation | Tests break; no replacement. | Subscribe to provider changelogs. |
How can I help you explore Laravel packages today?