From 11ef712d6d1a01c190dc6fbebcc81880664809bd Mon Sep 17 00:00:00 2001 From: Turbo Date: Thu, 7 Oct 2021 08:55:10 +0700 Subject: [PATCH] fix: fr and es shouldn't allow > 5 digits zip code --- src/ZipCode/Validator.php | 4 ++-- tests/unit/ZipCodeTest.php | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/ZipCode/Validator.php b/src/ZipCode/Validator.php index 6ef8402..e8b3e22 100644 --- a/src/ZipCode/Validator.php +++ b/src/ZipCode/Validator.php @@ -62,9 +62,9 @@ class Validator 'DEFAULT' => '[0-9A-Z\-]{1,10}', 'DK' => '\\d{4}', 'EE' => '[1-9]{1}[0-9]{4}', - 'ES' => '(AD{0,1}\\d{3})|\\d{5}', + 'ES' => '(AD{0,1}\\d{3})|^\\d{5}', 'FI' => '\\d{5}', - 'FR' => '(AD{0,1}\\d{3})|\\d{5}', + 'FR' => '(AD{0,1}\\d{3})|^\\d{5}', 'GB' => '[A-Z\\d]{2,4}\\s\\d[A-Z]{2}', 'GR' => '[1-9]{1}[0-9]{4}', 'HR' => '[0-9]{5}', diff --git a/tests/unit/ZipCodeTest.php b/tests/unit/ZipCodeTest.php index a7e3937..9f30eee 100644 --- a/tests/unit/ZipCodeTest.php +++ b/tests/unit/ZipCodeTest.php @@ -15,6 +15,8 @@ public function testIsValid() $this->assertFalse(Validator::isValid('01234', 'RO'), 'RO'); $this->assertFalse(Validator::isValid('20207 MLINI', 'HR'), 'HR'); $this->assertFalse(Validator::isValid('12345678901', 'US')); + $this->assertFalse(Validator::isValid('080024', 'ES')); + $this->assertFalse(Validator::isValid('080024', 'FR')); $this->assertTrue(Validator::isValid('123456', 'RO'), 'RO'); $this->assertTrue(Validator::isValid('01234', 'FR'), 'FR'); @@ -25,6 +27,8 @@ public function testIsValid() $this->assertTrue(Validator::isValid('LV-1111', 'LV')); $this->assertTrue(Validator::isValid('1111', 'LV')); $this->assertTrue(Validator::isValid('06093-2227', 'US')); + $this->assertTrue(Validator::isValid('08002', 'ES')); + $this->assertTrue(Validator::isValid('08002', 'FR')); $noPostCodeCountries = ['AE', 'AU', 'BA', 'CO', 'QA']; foreach ($noPostCodeCountries as $country) {