| @@ 18-78 (lines=61) @@ | ||
| 15 | * @author Vuong Minh <[email protected]> |
|
| 16 | * @since 1.0 |
|
| 17 | */ |
|
| 18 | class DomainValidatorTest extends TestCase |
|
| 19 | { |
|
| 20 | ||
| 21 | /** |
|
| 22 | * @dataProvider validDomainProvider |
|
| 23 | */ |
|
| 24 | public function testValidDomain($domain) |
|
| 25 | { |
|
| 26 | $model = DynamicModel::validateData([ |
|
| 27 | 'domain' => $domain |
|
| 28 | ], [ |
|
| 29 | ['domain', 'domainvn'] |
|
| 30 | ]); |
|
| 31 | ||
| 32 | $this->assertFalse($model->hasErrors()); |
|
| 33 | } |
|
| 34 | ||
| 35 | /** |
|
| 36 | * @dataProvider invalidDomainProvider |
|
| 37 | */ |
|
| 38 | public function testInvalidDomain($domain) |
|
| 39 | { |
|
| 40 | $model = DynamicModel::validateData([ |
|
| 41 | 'domain' => $domain |
|
| 42 | ], [ |
|
| 43 | ['domain', 'domainvn'] |
|
| 44 | ]); |
|
| 45 | ||
| 46 | $this->assertTrue($model->hasErrors()); |
|
| 47 | } |
|
| 48 | ||
| 49 | public function validDomainProvider() |
|
| 50 | { |
|
| 51 | return [ |
|
| 52 | ['yiiframework.vn'], |
|
| 53 | ['chinhphu.vn'], |
|
| 54 | ['edu.vn'], |
|
| 55 | ['fpt.edu.vn'], |
|
| 56 | ['zing.vn'], |
|
| 57 | ['mp3.zing.vn'], |
|
| 58 | ['gov.vn'], |
|
| 59 | ['google.com.vn'], |
|
| 60 | ['vnexpress.vn'], |
|
| 61 | ['momo.vn'] |
|
| 62 | ]; |
|
| 63 | } |
|
| 64 | ||
| 65 | ||
| 66 | public function invalidDomainProvider() |
|
| 67 | { |
|
| 68 | return [ |
|
| 69 | ['yiiframework.com'], |
|
| 70 | ['github.com'], |
|
| 71 | ['google.com'], |
|
| 72 | ['stackoverflow.com'], |
|
| 73 | ['blog.jetbrains.com'] |
|
| 74 | ]; |
|
| 75 | } |
|
| 76 | ||
| 77 | ||
| 78 | } |
|
| 79 | ||
| @@ 18-73 (lines=56) @@ | ||
| 15 | * @author Vuong Minh <[email protected]> |
|
| 16 | * @since 1.0 |
|
| 17 | */ |
|
| 18 | class IpValidatorTest extends TestCase |
|
| 19 | { |
|
| 20 | ||
| 21 | /** |
|
| 22 | * @dataProvider validIpProvider |
|
| 23 | */ |
|
| 24 | public function testValidIp($ip) |
|
| 25 | { |
|
| 26 | $model = DynamicModel::validateData(['ip' => $ip], [ |
|
| 27 | ['ip', 'ipvn'] |
|
| 28 | ]); |
|
| 29 | ||
| 30 | $this->assertFalse($model->hasErrors()); |
|
| 31 | } |
|
| 32 | ||
| 33 | /** |
|
| 34 | * @dataProvider invalidIpProvider |
|
| 35 | */ |
|
| 36 | public function testInvalidIp($ip) |
|
| 37 | { |
|
| 38 | $model = DynamicModel::validateData(['ip' => $ip], [ |
|
| 39 | ['ip', 'ipvn'] |
|
| 40 | ]); |
|
| 41 | ||
| 42 | $this->assertTrue($model->hasErrors()); |
|
| 43 | } |
|
| 44 | ||
| 45 | ||
| 46 | public function validIpProvider() |
|
| 47 | { |
|
| 48 | return [ |
|
| 49 | ['113.161.173.10'], |
|
| 50 | ['171.255.199.129'], |
|
| 51 | ['118.70.187.126'], |
|
| 52 | ['115.78.225.211'], |
|
| 53 | ['2405:4800:102:1::3'], |
|
| 54 | ['2001:df0:66:40::16'] |
|
| 55 | ]; |
|
| 56 | } |
|
| 57 | ||
| 58 | public function invalidIpProvider() |
|
| 59 | { |
|
| 60 | return [ |
|
| 61 | ['217.24.254.30'], |
|
| 62 | ['82.114.86.1'], |
|
| 63 | ['200.114.80.9'], |
|
| 64 | ['190.123.83.251'], |
|
| 65 | ['190.123.83.251'], |
|
| 66 | ['190.123.83.251'], |
|
| 67 | ['139.199.201.249'], |
|
| 68 | ['52.80.73.123'], |
|
| 69 | ['2a03:2880:f11f:83:face:b00c::25de'], |
|
| 70 | ['2a00:1450:4007:809::200e'] |
|
| 71 | ]; |
|
| 72 | } |
|
| 73 | } |
|
| 74 | ||