dataset/seed/dns-local/tests/test_dns_local.py
2022-07-04 15:44:18 +02:00

32 lines
1.1 KiB
Python

from yaml import load, SafeLoader
from os import environ
from execute import run
EXTERNAL_DOMAIN = 'google.fr'
def test_dns_local():
conf_file = f'{environ["MACHINE_TEST_DIR"]}/dns-local.yml'
with open(conf_file) as yaml:
data = load(yaml, Loader=SafeLoader)
if 'addresses' not in data:
return
for address in data['addresses']:
result = run(data['address'],
['/bin/resolvectl', 'query', address['dns_address']],
)
first = next(result)
search = f"{address['dns_address']}: {address['dns_ip']}"
assert first == search or first.startswith(search + " "), f'dns return "{first}" instead of "{search}"'
def test_dns_external():
conf_file = f'{environ["MACHINE_TEST_DIR"]}/dns-local.yml'
with open(conf_file) as yaml:
data = load(yaml, Loader=SafeLoader)
if data['dns_is_only_local']:
result = run(data['address'],
['/bin/resolvectl', 'query', EXTERNAL_DOMAIN],
)
assert 'resolve call failed' in next(result), f'should not resolved {EXTERNAL_DOMAIN}'