From 115d3effa762f93b37609045354c8deb56e558e0 Mon Sep 17 00:00:00 2001 From: Joeri van Veen Date: Tue, 6 Aug 2024 17:20:26 +0200 Subject: [PATCH 1/2] fix(splitstreet): ensure box separator for be address --- src/Helper/ValidateStreet.php | 2 +- .../Consignment/ConsignmentSplitStreetTest.php | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/Helper/ValidateStreet.php b/src/Helper/ValidateStreet.php index 8376e01d..9fef3f7a 100644 --- a/src/Helper/ValidateStreet.php +++ b/src/Helper/ValidateStreet.php @@ -25,7 +25,7 @@ class ValidateStreet ')?$~i'; const SPLIT_STREET_REGEX_BE = - '~(?P)(?P.*?)\s(?P(?P[0-9\-]{0,7}[0-9])(?P[A-z]{0,4})\s?(?P' . self::REGEX_BE_BOX_SEPARATORS . '|\,\s+)*\s?(?P[0-9A-z]{0,7}[0-9])?\s?(?:(?P[A-z]{1,4}$)|))?$~J'; + '~(?P)(?P)(?P.*?)\s(?P(?P[0-9\-]{0,7}[0-9])(?P[A-z]{0,4})\s?(?P' . self::REGEX_BE_BOX_SEPARATORS . '|\,\s+)*\s?(?P[0-9A-z]{0,7}[0-9])?\s?(?:(?P[A-z]{1,4}$)|))?$~J'; const REGEX_BE_BOX_SEPARATORS = SplitStreet::BOX_BTE . '|' . SplitStreet::BOX_EN . '|' . SplitStreet::BOX_FR . '|' . SplitStreet::BOX_NL . '|' . SplitStreet::BOX_DE . '|' . SplitStreet::BOX_SLASH . '|' . SplitStreet::BOX_DASH . '|' . SplitStreet::BOX_B . '.+'; /** * @param string $fullStreet diff --git a/test/Model/Consignment/ConsignmentSplitStreetTest.php b/test/Model/Consignment/ConsignmentSplitStreetTest.php index 1e10d7c2..f9952c38 100644 --- a/test/Model/Consignment/ConsignmentSplitStreetTest.php +++ b/test/Model/Consignment/ConsignmentSplitStreetTest.php @@ -4,8 +4,15 @@ namespace MyParcelNL\Sdk\Test\Model\Consignment; +use MyParcelNL\Sdk\src\Helper\SplitStreet; +use MyParcelNL\Sdk\src\Helper\ValidateStreet; use MyParcelNL\Sdk\src\Model\Carrier\CarrierBpost; +use MyParcelNL\Sdk\src\Model\Carrier\CarrierDHLEuroplus; +use MyParcelNL\Sdk\src\Model\Carrier\CarrierDHLForYou; +use MyParcelNL\Sdk\src\Model\Carrier\CarrierDHLParcelConnect; +use MyParcelNL\Sdk\src\Model\Carrier\CarrierDPD; use MyParcelNL\Sdk\src\Model\Carrier\CarrierPostNL; +use MyParcelNL\Sdk\src\Model\Carrier\CarrierUPS; use MyParcelNL\Sdk\src\Model\Consignment\AbstractConsignment; use MyParcelNL\Sdk\Test\Bootstrap\ConsignmentTestCase; @@ -547,5 +554,11 @@ public function testSplitStreet(array $testData): void ], $consignment ); + + if (AbstractConsignment::CC_BE === $testData[self::COUNTRY]) { + $matches = []; + preg_match(ValidateStreet::SPLIT_STREET_REGEX_BE, $testData[self::FULL_STREET], $matches); + self::assertEquals(true, array_key_exists('box_separator', $matches)); + } } } From 66fd5dcf298a7c8d262300a62fa7ebb2b49a2f0f Mon Sep 17 00:00:00 2001 From: Joeri van Veen Date: Tue, 6 Aug 2024 17:35:08 +0200 Subject: [PATCH 2/2] refactor: remove unused use classes --- test/Model/Consignment/ConsignmentSplitStreetTest.php | 6 ------ 1 file changed, 6 deletions(-) diff --git a/test/Model/Consignment/ConsignmentSplitStreetTest.php b/test/Model/Consignment/ConsignmentSplitStreetTest.php index f9952c38..6344fe2f 100644 --- a/test/Model/Consignment/ConsignmentSplitStreetTest.php +++ b/test/Model/Consignment/ConsignmentSplitStreetTest.php @@ -4,15 +4,9 @@ namespace MyParcelNL\Sdk\Test\Model\Consignment; -use MyParcelNL\Sdk\src\Helper\SplitStreet; use MyParcelNL\Sdk\src\Helper\ValidateStreet; use MyParcelNL\Sdk\src\Model\Carrier\CarrierBpost; -use MyParcelNL\Sdk\src\Model\Carrier\CarrierDHLEuroplus; -use MyParcelNL\Sdk\src\Model\Carrier\CarrierDHLForYou; -use MyParcelNL\Sdk\src\Model\Carrier\CarrierDHLParcelConnect; -use MyParcelNL\Sdk\src\Model\Carrier\CarrierDPD; use MyParcelNL\Sdk\src\Model\Carrier\CarrierPostNL; -use MyParcelNL\Sdk\src\Model\Carrier\CarrierUPS; use MyParcelNL\Sdk\src\Model\Consignment\AbstractConsignment; use MyParcelNL\Sdk\Test\Bootstrap\ConsignmentTestCase;