mirror of
https://github.com/egulias/EmailValidator.git
synced 2026-09-10 10:06:37 +00:00
Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| bc31baa11e | |||
| c0c888ae10 | |||
| 181a2fc726 | |||
| a1e85fa9fb | |||
| 7ff8caaae5 | |||
| 5d56347ddf | |||
| 80ad87acdd |
@@ -1,2 +1,3 @@
|
|||||||
report/
|
report/
|
||||||
vendor/
|
vendor/
|
||||||
|
.idea
|
||||||
|
|||||||
@@ -44,6 +44,8 @@ class DNSCheckValidation implements EmailValidation
|
|||||||
|
|
||||||
protected function checkDNS($host)
|
protected function checkDNS($host)
|
||||||
{
|
{
|
||||||
|
$host = rtrim($host, '.') . '.';
|
||||||
|
|
||||||
$Aresult = true;
|
$Aresult = true;
|
||||||
$MXresult = checkdnsrr($host, 'MX');
|
$MXresult = checkdnsrr($host, 'MX');
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ With the help of [PHPStorm](https://www.jetbrains.com/phpstorm/)
|
|||||||
Run the command below to install via Composer
|
Run the command below to install via Composer
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
composer require egulias/email-validator "~2.0"
|
composer require egulias/email-validator "~2.1"
|
||||||
```
|
```
|
||||||
|
|
||||||
##Getting Started##
|
##Getting Started##
|
||||||
@@ -24,16 +24,17 @@ A basic example with the RFC validation
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
use Egulias\EmailValidator\EmailValidator;
|
use Egulias\EmailValidator\EmailValidator;
|
||||||
|
use Egulias\EmailValidator\Validation\RFCValidation;
|
||||||
|
|
||||||
$validator = new EmailValidator();
|
$validator = new EmailValidator();
|
||||||
$validator->isValid("example@example.com", new RFCValidation()) //true
|
$validator->isValid("example@example.com", new RFCValidation()); //true
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
###Available validations###
|
###Available validations###
|
||||||
|
|
||||||
1. [RFCValidation](https://github.com/egulias/EmailValidator/blob/master/EmailValidator/Validation/RFCValidation.php)
|
1. [RFCValidation](https://github.com/egulias/EmailValidator/blob/master/EmailValidator/Validation/RFCValidation.php)
|
||||||
2. [NoWarningsRFCValidation](https://github.com/egulias/EmailValidator/blob/master/EmailValidator/Validation/NoRFCWarningsValidation.php)
|
2. [NoRFCWarningsValidation](https://github.com/egulias/EmailValidator/blob/master/EmailValidator/Validation/NoRFCWarningsValidation.php)
|
||||||
3. [DNSCheckValidation](https://github.com/egulias/EmailValidator/blob/master/EmailValidator/Validation/DNSCheckValidation.php)
|
3. [DNSCheckValidation](https://github.com/egulias/EmailValidator/blob/master/EmailValidator/Validation/DNSCheckValidation.php)
|
||||||
4. [SpoofCheckValidation](https://github.com/egulias/EmailValidator/blob/master/EmailValidator/Validation/SpoofCheckValidation.php)
|
4. [SpoofCheckValidation](https://github.com/egulias/EmailValidator/blob/master/EmailValidator/Validation/SpoofCheckValidation.php)
|
||||||
5. [MultipleValidationWithAnd](https://github.com/egulias/EmailValidator/blob/master/EmailValidator/Validation/MultipleValidationWithAnd.php)
|
5. [MultipleValidationWithAnd](https://github.com/egulias/EmailValidator/blob/master/EmailValidator/Validation/MultipleValidationWithAnd.php)
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ class EmailValidatorTest extends \PHPUnit_Framework_TestCase
|
|||||||
public function testValidationIsUsed()
|
public function testValidationIsUsed()
|
||||||
{
|
{
|
||||||
$validator = new EmailValidator();
|
$validator = new EmailValidator();
|
||||||
$validation = $this->getMock("Egulias\\EmailValidator\\Validation\\EmailValidation");
|
$validation = $this->getMockBuilder("Egulias\\EmailValidator\\Validation\\EmailValidation")->getMock();
|
||||||
$validation->expects($this->once())->method("isValid")->willReturn(true);
|
$validation->expects($this->once())->method("isValid")->willReturn(true);
|
||||||
$validation->expects($this->once())->method("getWarnings")->willReturn([]);
|
$validation->expects($this->once())->method("getWarnings")->willReturn([]);
|
||||||
$validation->expects($this->once())->method("getError")->willReturn(null);
|
$validation->expects($this->once())->method("getError")->willReturn(null);
|
||||||
@@ -21,7 +21,7 @@ class EmailValidatorTest extends \PHPUnit_Framework_TestCase
|
|||||||
public function testMultipleValidation()
|
public function testMultipleValidation()
|
||||||
{
|
{
|
||||||
$validator = new EmailValidator();
|
$validator = new EmailValidator();
|
||||||
$validation = $this->getMock("Egulias\\EmailValidator\\Validation\\EmailValidation");
|
$validation = $this->getMockBuilder("Egulias\\EmailValidator\\Validation\\EmailValidation")->getMock();
|
||||||
$validation->expects($this->once())->method("isValid")->willReturn(true);
|
$validation->expects($this->once())->method("isValid")->willReturn(true);
|
||||||
$validation->expects($this->once())->method("getWarnings")->willReturn([]);
|
$validation->expects($this->once())->method("getWarnings")->willReturn([]);
|
||||||
$validation->expects($this->once())->method("getError")->willReturn(null);
|
$validation->expects($this->once())->method("getError")->willReturn(null);
|
||||||
|
|||||||
@@ -28,8 +28,8 @@ class IsEmailFunctionTests extends \PHPUnit_Framework_TestCase
|
|||||||
public function isEmailTestSuite()
|
public function isEmailTestSuite()
|
||||||
{
|
{
|
||||||
$testSuite = dirname(__FILE__) . '/../../resources/is_email_tests.xml';
|
$testSuite = dirname(__FILE__) . '/../../resources/is_email_tests.xml';
|
||||||
$document = new \DOMDocument();
|
$document = new \DOMDocument();
|
||||||
$document->load($testSuite);
|
$document->load($testSuite);
|
||||||
$elements = $document->getElementsByTagName('test');
|
$elements = $document->getElementsByTagName('test');
|
||||||
$tests = [];
|
$tests = [];
|
||||||
|
|
||||||
@@ -40,5 +40,4 @@ class IsEmailFunctionTests extends \PHPUnit_Framework_TestCase
|
|||||||
|
|
||||||
return $tests;
|
return $tests;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,11 +13,11 @@ class MultipleValidationWitAndTest extends \PHPUnit_Framework_TestCase
|
|||||||
{
|
{
|
||||||
public function testUsesAndLogicalOperation()
|
public function testUsesAndLogicalOperation()
|
||||||
{
|
{
|
||||||
$lexer = $this->getMock("Egulias\\EmailValidator\\EmailLexer");
|
$lexer = $this->getMockBuilder("Egulias\\EmailValidator\\EmailLexer")->getMock();
|
||||||
$validationTrue = $this->getMock("Egulias\\EmailValidator\\Validation\\EmailValidation");
|
$validationTrue = $this->getMockBuilder("Egulias\\EmailValidator\\Validation\\EmailValidation")->getMock();
|
||||||
$validationTrue->expects($this->any())->method("isValid")->willReturn(true);
|
$validationTrue->expects($this->any())->method("isValid")->willReturn(true);
|
||||||
$validationTrue->expects($this->any())->method("getWarnings")->willReturn([]);
|
$validationTrue->expects($this->any())->method("getWarnings")->willReturn([]);
|
||||||
$validationFalse = $this->getMock("Egulias\\EmailValidator\\Validation\\EmailValidation");
|
$validationFalse = $this->getMockBuilder("Egulias\\EmailValidator\\Validation\\EmailValidation")->getMock();
|
||||||
$validationFalse->expects($this->any())->method("isValid")->willReturn(false);
|
$validationFalse->expects($this->any())->method("isValid")->willReturn(false);
|
||||||
$validationFalse->expects($this->any())->method("getWarnings")->willReturn([]);
|
$validationFalse->expects($this->any())->method("getWarnings")->willReturn([]);
|
||||||
$multipleValidation = new MultipleValidationWithAnd([$validationTrue, $validationFalse]);
|
$multipleValidation = new MultipleValidationWithAnd([$validationTrue, $validationFalse]);
|
||||||
@@ -34,9 +34,9 @@ class MultipleValidationWitAndTest extends \PHPUnit_Framework_TestCase
|
|||||||
|
|
||||||
public function testValidationIsValid()
|
public function testValidationIsValid()
|
||||||
{
|
{
|
||||||
$lexer = $this->getMock("Egulias\\EmailValidator\\EmailLexer");
|
$lexer = $this->getMockBuilder("Egulias\\EmailValidator\\EmailLexer")->getMock();
|
||||||
|
|
||||||
$validation = $this->getMock("Egulias\\EmailValidator\\Validation\\EmailValidation");
|
$validation = $this->getMockBuilder("Egulias\\EmailValidator\\Validation\\EmailValidation")->getMock();
|
||||||
$validation->expects($this->any())->method("isValid")->willReturn(true);
|
$validation->expects($this->any())->method("isValid")->willReturn(true);
|
||||||
$validation->expects($this->once())->method("getWarnings")->willReturn([]);
|
$validation->expects($this->once())->method("getWarnings")->willReturn([]);
|
||||||
|
|
||||||
@@ -55,12 +55,13 @@ class MultipleValidationWitAndTest extends \PHPUnit_Framework_TestCase
|
|||||||
];
|
];
|
||||||
$expectedResult = array_merge($warnings1, $warnings2);
|
$expectedResult = array_merge($warnings1, $warnings2);
|
||||||
|
|
||||||
$lexer = $this->getMock("Egulias\\EmailValidator\\EmailLexer");
|
$lexer = $this->getMockBuilder("Egulias\\EmailValidator\\EmailLexer")->getMock();
|
||||||
$validation1 = $this->getMock("Egulias\\EmailValidator\\Validation\\EmailValidation");
|
$validation1 = $this->getMockBuilder("Egulias\\EmailValidator\\Validation\\EmailValidation")->getMock();
|
||||||
$validation1->expects($this->any())->method("isValid")->willReturn(true);
|
$validation1->expects($this->any())->method("isValid")->willReturn(true);
|
||||||
$validation1->expects($this->once())->method("getWarnings")->willReturn($warnings1);
|
$validation1->expects($this->once())->method("getWarnings")->willReturn($warnings1);
|
||||||
|
|
||||||
$validation2 = $this->getMock("Egulias\\EmailValidator\\Validation\\EmailValidation");
|
$validation2 = $this->getMockBuilder("Egulias\\EmailValidator\\Validation\\EmailValidation")->getMock();
|
||||||
|
|
||||||
$validation2->expects($this->any())->method("isValid")->willReturn(false);
|
$validation2->expects($this->any())->method("isValid")->willReturn(false);
|
||||||
$validation2->expects($this->once())->method("getWarnings")->willReturn($warnings2);
|
$validation2->expects($this->once())->method("getWarnings")->willReturn($warnings2);
|
||||||
|
|
||||||
@@ -76,14 +77,14 @@ class MultipleValidationWitAndTest extends \PHPUnit_Framework_TestCase
|
|||||||
|
|
||||||
$expectedResult = new MultipleErrors([$error1, $error2]);
|
$expectedResult = new MultipleErrors([$error1, $error2]);
|
||||||
|
|
||||||
$lexer = $this->getMock("Egulias\\EmailValidator\\EmailLexer");
|
$lexer = $this->getMockBuilder("Egulias\\EmailValidator\\EmailLexer")->getMock();
|
||||||
|
|
||||||
$validation1 = $this->getMock("Egulias\\EmailValidator\\Validation\\EmailValidation");
|
$validation1 = $this->getMockBuilder("Egulias\\EmailValidator\\Validation\\EmailValidation")->getMock();
|
||||||
$validation1->expects($this->any())->method("isValid")->willReturn(true);
|
$validation1->expects($this->any())->method("isValid")->willReturn(true);
|
||||||
$validation1->expects($this->once())->method("getWarnings")->willReturn([]);
|
$validation1->expects($this->once())->method("getWarnings")->willReturn([]);
|
||||||
$validation1->expects($this->once())->method("getError")->willReturn($error1);
|
$validation1->expects($this->once())->method("getError")->willReturn($error1);
|
||||||
|
|
||||||
$validation2 = $this->getMock("Egulias\\EmailValidator\\Validation\\EmailValidation");
|
$validation2 = $this->getMockBuilder("Egulias\\EmailValidator\\Validation\\EmailValidation")->getMock();
|
||||||
$validation2->expects($this->any())->method("isValid")->willReturn(false);
|
$validation2->expects($this->any())->method("isValid")->willReturn(false);
|
||||||
$validation2->expects($this->once())->method("getWarnings")->willReturn([]);
|
$validation2->expects($this->once())->method("getWarnings")->willReturn([]);
|
||||||
$validation2->expects($this->once())->method("getError")->willReturn($error2);
|
$validation2->expects($this->once())->method("getError")->willReturn($error2);
|
||||||
@@ -99,14 +100,14 @@ class MultipleValidationWitAndTest extends \PHPUnit_Framework_TestCase
|
|||||||
|
|
||||||
$expectedResult = new MultipleErrors([$error]);
|
$expectedResult = new MultipleErrors([$error]);
|
||||||
|
|
||||||
$lexer = $this->getMock("Egulias\\EmailValidator\\EmailLexer");
|
$lexer = $this->getMockBuilder("Egulias\\EmailValidator\\EmailLexer")->getMock();
|
||||||
|
|
||||||
$validation1 = $this->getMock("Egulias\\EmailValidator\\Validation\\EmailValidation");
|
$validation1 = $this->getMockBuilder("Egulias\\EmailValidator\\Validation\\EmailValidation")->getMock();
|
||||||
$validation1->expects($this->any())->method("isValid")->willReturn(false);
|
$validation1->expects($this->any())->method("isValid")->willReturn(false);
|
||||||
$validation1->expects($this->once())->method("getWarnings")->willReturn([]);
|
$validation1->expects($this->once())->method("getWarnings")->willReturn([]);
|
||||||
$validation1->expects($this->once())->method("getError")->willReturn($error);
|
$validation1->expects($this->once())->method("getError")->willReturn($error);
|
||||||
|
|
||||||
$validation2 = $this->getMock("Egulias\\EmailValidator\\Validation\\EmailValidation");
|
$validation2 = $this->getMockBuilder("Egulias\\EmailValidator\\Validation\\EmailValidation")->getMock();
|
||||||
$validation2->expects($this->never())->method("isValid");
|
$validation2->expects($this->never())->method("isValid");
|
||||||
$validation2->expects($this->never())->method("getWarnings");
|
$validation2->expects($this->never())->method("getWarnings");
|
||||||
$validation2->expects($this->never())->method("getError");
|
$validation2->expects($this->never())->method("getError");
|
||||||
|
|||||||
+1
-1
@@ -29,7 +29,7 @@
|
|||||||
"dominicsayers/isemail": "dev-master"
|
"dominicsayers/isemail": "dev-master"
|
||||||
},
|
},
|
||||||
"suggest": {
|
"suggest": {
|
||||||
"ext/php-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation"
|
"ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation"
|
||||||
},
|
},
|
||||||
"autoload": {
|
"autoload": {
|
||||||
"psr-4": {
|
"psr-4": {
|
||||||
|
|||||||
Reference in New Issue
Block a user