From 9f9df7fd941e6fb0a20588dd3fadb30abe8b1df2 Mon Sep 17 00:00:00 2001 From: Mike Bronner Date: Thu, 22 Jun 2017 07:44:26 -0700 Subject: [PATCH 1/4] Update cache key to work with non-roman alphabets --- src/ProviderAndDumperAggregator.php | 8 ++++---- .../Providers/GeocoderServiceTest.php | 17 ++++++++++++++--- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/src/ProviderAndDumperAggregator.php b/src/ProviderAndDumperAggregator.php index 75361c0..5fb049b 100644 --- a/src/ProviderAndDumperAggregator.php +++ b/src/ProviderAndDumperAggregator.php @@ -74,9 +74,9 @@ public function dump($dumper) */ public function geocode($value) { - $cacheId = str_slug($value); + $cacheKey = str_slug(strtolower(urlencode($value))); $this->results = cache()->remember( - "geocoder-{$cacheId}", + "geocoder-{$cacheKey}", config('geocoder.cache-duraction', 0), function () use ($value) { return parent::geocode($value); @@ -101,9 +101,9 @@ public function get() */ public function reverse($latitude, $longitude) { - $cacheId = str_slug("{$latitude}-{$longitude}"); + $cacheKey = str_slug(strtolower(urlencode("{$latitude}-{$longitude}"))); $this->results = cache()->remember( - "geocoder-{$cacheId}", + "geocoder-{$cacheKey}", config('geocoder.cache-duraction', 0), function () use ($latitude, $longitude) { return parent::reverse($latitude, $longitude); diff --git a/tests/Laravel5_3/Providers/GeocoderServiceTest.php b/tests/Laravel5_3/Providers/GeocoderServiceTest.php index b94f690..6dc8a89 100644 --- a/tests/Laravel5_3/Providers/GeocoderServiceTest.php +++ b/tests/Laravel5_3/Providers/GeocoderServiceTest.php @@ -178,9 +178,20 @@ public function testCacheIsUsed() { $result = app('geocoder')->geocode('1600 Pennsylvania Ave., Washington, DC USA') ->get(); - $cacheKey = 'geocoder-' . str_slug('1600 Pennsylvania Ave., Washington, DC USA'); + $cacheKey = str_slug(strtolower(urlencode('1600 Pennsylvania Ave., Washington, DC USA'))); - $this->assertTrue(cache()->has($cacheKey)); - $this->assertEquals($result, cache($cacheKey)); + $this->assertEquals($result, cache("geocoder-{$cacheKey}")); + $this->assertTrue(cache()->has("geocoder-{$cacheKey}")); + } + + public function testJapaneseCharacterGeocoding() + { + $cacheKey = str_slug(strtolower(urlencode('108-0075 東京都港区港南2丁目16-3'))); + + app('geocoder')->geocode('108-0075 東京都港区港南2丁目16-3') + ->get(); + + $this->assertEquals($cacheKey, '108-0075e69db1e4baace983bde6b8afe58cbae6b8afe58d97efbc92e4b881e79baeefbc91efbc96efbc8defbc93'); + $this->assertTrue(cache()->has("geocoder-{$cacheKey}")); } } From a328949d7c93ac9dc79d53a7685747cb9b13b5d5 Mon Sep 17 00:00:00 2001 From: Mike Bronner Date: Sun, 25 Jun 2017 08:04:02 -0700 Subject: [PATCH 2/4] Add unit test to catch failed geocoding --- .../Laravel5_3/Providers/GeocoderServiceTest.php | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/tests/Laravel5_3/Providers/GeocoderServiceTest.php b/tests/Laravel5_3/Providers/GeocoderServiceTest.php index 6dc8a89..8f8638b 100644 --- a/tests/Laravel5_3/Providers/GeocoderServiceTest.php +++ b/tests/Laravel5_3/Providers/GeocoderServiceTest.php @@ -194,4 +194,19 @@ public function testJapaneseCharacterGeocoding() $this->assertEquals($cacheKey, '108-0075e69db1e4baace983bde6b8afe58cbae6b8afe58d97efbc92e4b881e79baeefbc91efbc96efbc8defbc93'); $this->assertTrue(cache()->has("geocoder-{$cacheKey}")); } + + public function testFailedGeocodingCanBeCaught() + { + $result = 'success'; + + try { + app('geocoder') + ->geocode('asd,Afghanistan') + ->get(); + } catch (\Throwable $exception) { + $result = 'failure'; + } + + $this->assertEquals('failure', $result); + } } From 9ad306840535fc1da154fb62222c67e20350cd35 Mon Sep 17 00:00:00 2001 From: Mike Bronner Date: Sun, 25 Jun 2017 08:17:48 -0700 Subject: [PATCH 3/4] Fix travis configuration --- .travis.yml | 11 +++++------ composer.json | 1 + 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.travis.yml b/.travis.yml index 3dff9db..26957e7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,16 +1,15 @@ language: php php: - - 5.4 - - 5.5 - - 5.6 - 7.0 - - hhvm + - 7.1 before_script: - travis_retry composer self-update - travis_retry composer install --no-interaction --prefer-source --dev -script: phpunit --coverage-text --coverage-clover ./build/logs/clover.xml +script: + - ./vendor/bin/phpunit --coverage-text --coverage-clover ./build/logs/clover.xml -after_script: php vendor/bin/coveralls +after_script: + - php vendor/bin/coveralls diff --git a/composer.json b/composer.json index 72e5c5f..409562f 100644 --- a/composer.json +++ b/composer.json @@ -40,6 +40,7 @@ "squizlabs/php_codesniffer": "^2.7", "phpmd/phpmd": "^2.4", "pdepend/pdepend": "^2.2", + "satooshi/php-coveralls" : "dev-master@dev", "sebastian/phpcpd": "^2.0", "jakub-onderka/php-parallel-lint": "^0.9.2" }, From a322da316717eda1fb38afdc3db1b5bfc7d29ef6 Mon Sep 17 00:00:00 2001 From: Mike Bronner Date: Wed, 12 Jul 2017 18:25:36 -0700 Subject: [PATCH 4/4] Replace cache helper with cache from IOC --- src/ProviderAndDumperAggregator.php | 4 ++-- tests/Laravel5_3/Providers/GeocoderServiceTest.php | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/ProviderAndDumperAggregator.php b/src/ProviderAndDumperAggregator.php index 5fb049b..2599dfa 100644 --- a/src/ProviderAndDumperAggregator.php +++ b/src/ProviderAndDumperAggregator.php @@ -75,7 +75,7 @@ public function dump($dumper) public function geocode($value) { $cacheKey = str_slug(strtolower(urlencode($value))); - $this->results = cache()->remember( + $this->results = app('cache')->remember( "geocoder-{$cacheKey}", config('geocoder.cache-duraction', 0), function () use ($value) { @@ -102,7 +102,7 @@ public function get() public function reverse($latitude, $longitude) { $cacheKey = str_slug(strtolower(urlencode("{$latitude}-{$longitude}"))); - $this->results = cache()->remember( + $this->results = app('cache')->remember( "geocoder-{$cacheKey}", config('geocoder.cache-duraction', 0), function () use ($latitude, $longitude) { diff --git a/tests/Laravel5_3/Providers/GeocoderServiceTest.php b/tests/Laravel5_3/Providers/GeocoderServiceTest.php index 8f8638b..d8a795b 100644 --- a/tests/Laravel5_3/Providers/GeocoderServiceTest.php +++ b/tests/Laravel5_3/Providers/GeocoderServiceTest.php @@ -180,8 +180,8 @@ public function testCacheIsUsed() ->get(); $cacheKey = str_slug(strtolower(urlencode('1600 Pennsylvania Ave., Washington, DC USA'))); - $this->assertEquals($result, cache("geocoder-{$cacheKey}")); - $this->assertTrue(cache()->has("geocoder-{$cacheKey}")); + $this->assertEquals($result, app('cache')->get("geocoder-{$cacheKey}")); + $this->assertTrue(app('cache')->has("geocoder-{$cacheKey}")); } public function testJapaneseCharacterGeocoding() @@ -192,7 +192,7 @@ public function testJapaneseCharacterGeocoding() ->get(); $this->assertEquals($cacheKey, '108-0075e69db1e4baace983bde6b8afe58cbae6b8afe58d97efbc92e4b881e79baeefbc91efbc96efbc8defbc93'); - $this->assertTrue(cache()->has("geocoder-{$cacheKey}")); + $this->assertTrue(app('cache')->has("geocoder-{$cacheKey}")); } public function testFailedGeocodingCanBeCaught() pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy