|
| 1 | +"""Test Domain.""" |
1 | 2 | # -*- coding: utf-8 -*-
|
| 3 | + |
| 4 | +# standard |
2 | 5 | import pytest
|
3 | 6 |
|
| 7 | +# local |
4 | 8 | from validators import domain, ValidationFailure
|
5 | 9 |
|
6 | 10 |
|
7 |
| -@pytest.mark.parametrize('value', [ |
8 |
| - 'example.com', |
9 |
| - 'xn----gtbspbbmkef.xn--p1ai', |
10 |
| - 'underscore_subdomain.example.com', |
11 |
| - 'something.versicherung', |
12 |
| - 'someThing.versicherung', |
13 |
| - '11.com', |
14 |
| - '3.cn', |
15 |
| - 'a.cn', |
16 |
| - 'sub1.sub2.sample.co.uk', |
17 |
| - 'somerandomexample.xn--fiqs8s', |
18 |
| - 'kräuter.com', |
19 |
| - 'über.com' |
20 |
| -]) |
21 |
| -def test_returns_true_on_valid_domain(value): |
22 |
| - assert domain(value) |
| 11 | +@pytest.mark.parametrize( |
| 12 | + ("value", "rfc_1034", "rfc_2782"), |
| 13 | + [ |
| 14 | + ("example.com", False, False), |
| 15 | + ("xn----gtbspbbmkef.xn--p1ai", False, False), |
| 16 | + ("underscore_subdomain.example.com", False, False), |
| 17 | + ("something.versicherung", False, False), |
| 18 | + ("someThing.versicherung.", True, False), |
| 19 | + ("11.com", False, False), |
| 20 | + ("3.cn.", True, False), |
| 21 | + ("_example.com", False, True), |
| 22 | + ("a.cn", False, False), |
| 23 | + ("sub1.sub2.sample.co.uk", False, False), |
| 24 | + ("somerandomexample.xn--fiqs8s", False, False), |
| 25 | + ("kräuter.com.", True, False), |
| 26 | + ("über.com", False, False), |
| 27 | + ], |
| 28 | +) |
| 29 | +def test_returns_true_on_valid_domain(value: str, rfc_1034: bool, rfc_2782: bool): |
| 30 | + """Test returns true on valid domain.""" |
| 31 | + assert domain(value, rfc_1034=rfc_1034, rfc_2782=rfc_2782) |
23 | 32 |
|
24 | 33 |
|
25 |
| -@pytest.mark.parametrize('value', [ |
26 |
| - 'example.com/', |
27 |
| - 'example.com:4444', |
28 |
| - 'example.-com', |
29 |
| - 'example.', |
30 |
| - '-example.com', |
31 |
| - 'example-.com', |
32 |
| - '_example.com', |
33 |
| - 'example_.com', |
34 |
| - 'example', |
35 |
| - 'a......b.com', |
36 |
| - 'a.123', |
37 |
| - '123.123', |
38 |
| - '123.123.123', |
39 |
| - '123.123.123.123' |
40 |
| -]) |
41 |
| -def test_returns_failed_validation_on_invalid_domain(value): |
42 |
| - assert isinstance(domain(value), ValidationFailure) |
| 34 | +@pytest.mark.parametrize( |
| 35 | + ("value", "rfc_1034", "rfc_2782"), |
| 36 | + [ |
| 37 | + ("example.com/.", True, False), |
| 38 | + ("example.com:4444", False, False), |
| 39 | + ("example.-com", False, False), |
| 40 | + ("example.", False, False), |
| 41 | + ("-example.com", False, False), |
| 42 | + ("example-.com.", True, False), |
| 43 | + ("_example.com", False, False), |
| 44 | + ("_example._com", False, False), |
| 45 | + ("example_.com", False, False), |
| 46 | + ("example", False, False), |
| 47 | + ("a......b.com", False, False), |
| 48 | + ("a.123", False, False), |
| 49 | + ("123.123", False, False), |
| 50 | + ("123.123.123.", True, False), |
| 51 | + ("123.123.123.123", False, False), |
| 52 | + ], |
| 53 | +) |
| 54 | +def test_returns_failed_validation_on_invalid_domain(value: str, rfc_1034: bool, rfc_2782: bool): |
| 55 | + """Test returns failed validation on invalid domain.""" |
| 56 | + assert isinstance(domain(value, rfc_1034=rfc_1034, rfc_2782=rfc_2782), ValidationFailure) |
0 commit comments