Merge pull request #7165 from appwrite/feat-more-phone-validation

Feat more phone validation
This commit is contained in:
Eldad A. Fux 2024-02-18 22:39:45 +01:00 committed by GitHub
commit 44a9aed48e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 8 additions and 1 deletions

View file

@ -32,7 +32,7 @@ class Phone extends Validator
*/
public function isValid($value): bool
{
return is_string($value) && !!\preg_match('/^\+[1-9]\d{1,14}$/', $value);
return is_string($value) && !!\preg_match('/^\+[1-9]\d{6,14}$/', $value);
}
/**

View file

@ -20,13 +20,20 @@ class PhoneTest extends TestCase
$this->assertEquals($this->object->isValid(null), false);
$this->assertEquals($this->object->isValid(''), false);
$this->assertEquals($this->object->isValid('+1'), false);
$this->assertEquals($this->object->isValid('+14'), false);
$this->assertEquals($this->object->isValid('+141'), false);
$this->assertEquals($this->object->isValid('+1415'), false);
$this->assertEquals($this->object->isValid('+14155'), false);
$this->assertEquals($this->object->isValid('+141555'), false);
$this->assertEquals($this->object->isValid('8989829304'), false);
$this->assertEquals($this->object->isValid('786-307-3615'), false);
$this->assertEquals($this->object->isValid('+16308A520397'), false);
$this->assertEquals($this->object->isValid('+0415553452342'), false);
$this->assertEquals($this->object->isValid('+14 155 5524564'), false);
$this->assertEquals($this->object->isValid('+1415555245634543'), false);
$this->assertEquals($this->object->isValid(+14155552456), false);
$this->assertEquals($this->object->isValid('+1415555'), true);
$this->assertEquals($this->object->isValid('+14155552'), true);
$this->assertEquals($this->object->isValid('+141555526'), true);
$this->assertEquals($this->object->isValid('+16308520394'), true);