1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
# SPDX-License-Identifier: AGPL-3.0-or-later
"""Tests for forms in names app."""
from ..forms import DomainAddForm, HostnameForm
def test_hostname_field():
"""Test that hostname field accepts only valid hostnames."""
valid_hostnames = [
'a', '0a', 'a0', 'AAA', '00', '0-0', 'example-hostname', 'example',
'012345678901234567890123456789012345678901234567890123456789012'
]
invalid_hostnames = [
'', '-', '-a', 'a-', '.a', 'a.', 'a.a', '?', 'a?a',
'0123456789012345678901234567890123456789012345678901234567890123'
]
for hostname in valid_hostnames:
form = HostnameForm({'hostname': hostname})
assert form.is_valid()
for hostname in invalid_hostnames:
form = HostnameForm({'hostname': hostname})
assert not form.is_valid()
def test_domain_name_field():
"""Test that domain name field accepts only valid domain names."""
valid_domain_names = [
'a', '0a', 'a0', 'AAA', '00', '0-0', 'example-hostname', 'example',
'example.org', 'a.b.c.d', 'a-0.b-0.c-0',
'012345678901234567890123456789012345678901234567890123456789012',
((('x' * 63) + '.') * 3) + 'x' * 61
]
invalid_domain_names = [
'', '-', '-a', 'a-', '.a', 'a.', '?', 'a?a', 'a..a', 'a.-a', '.',
((('x' * 63) + '.') * 3) + 'x' * 62, 'x' * 64
]
for domain_name in valid_domain_names:
form = DomainAddForm({'domain_name': domain_name})
assert form.is_valid()
for domain_name in invalid_domain_names:
form = DomainAddForm({'domain_name': domain_name})
assert not form.is_valid()
|