v1/vendor/commerceguys/addressing/tests/PostalCodeHelperTest.php

37 lines
1.2 KiB
PHP

<?php
namespace CommerceGuys\Addressing\Tests;
use CommerceGuys\Addressing\PostalCodeHelper;
use PHPUnit\Framework\TestCase;
/**
* @coversDefaultClass \CommerceGuys\Addressing\PostalCodeHelper
*/
final class PostalCodeHelperTest extends TestCase
{
/**
* @covers ::match
* @covers ::matchRule
* @covers ::buildList
*/
public function testMatch()
{
// Empty rules should pass.
$this->assertEquals(true, PostalCodeHelper::match('123', null, null));
$includeRule = '/(20)[0-9]{1}/';
$excludeRule = '/(20)[0-2]{1}/';
$this->assertEquals(true, PostalCodeHelper::match('203', $includeRule, $excludeRule));
$this->assertEquals(false, PostalCodeHelper::match('202', $includeRule, $excludeRule));
$includeRule = '10, 20, 30:40';
$excludeRule = '35';
$this->assertEquals(true, PostalCodeHelper::match('34', $includeRule, $excludeRule));
$this->assertEquals(false, PostalCodeHelper::match('35', $includeRule, $excludeRule));
$this->assertEquals(true, PostalCodeHelper::match('5', '5:7, 10:20', ''));
$this->assertEquals(true, PostalCodeHelper::match('7', '5:7, 10:20', ''));
}
}