mirror of
https://github.com/Mesteriis/hassio-addons-avm.git
synced 2026-01-09 23:11:02 +01:00
47 lines
1.4 KiB
Python
47 lines
1.4 KiB
Python
import pytest
|
|
import socket
|
|
|
|
from backup.config import Config, Setting
|
|
from backup.util import Resolver
|
|
|
|
|
|
@pytest.mark.asyncio
|
|
async def test_empty_name_server(resolver: Resolver, config: Config):
|
|
assert resolver._alt_dns.nameservers == ["8.8.8.8", "8.8.4.4"]
|
|
assert resolver._resolver is resolver._original_dns
|
|
config.override(Setting.ALTERNATE_DNS_SERVERS, "")
|
|
resolver.updateConfig()
|
|
assert resolver._resolver is resolver._alt_dns
|
|
|
|
# make sure the value is cached
|
|
prev = resolver._alt_dns
|
|
resolver.updateConfig()
|
|
assert resolver._alt_dns is prev
|
|
|
|
|
|
@pytest.mark.asyncio
|
|
async def test_toggle(resolver: Resolver):
|
|
assert resolver._resolver is resolver._original_dns
|
|
resolver.toggle()
|
|
assert resolver._resolver is resolver._alt_dns
|
|
resolver.toggle()
|
|
assert resolver._resolver is resolver._original_dns
|
|
|
|
|
|
@pytest.mark.asyncio
|
|
async def test_hard_resolve(resolver: Resolver, config: Config):
|
|
expected = [{
|
|
'family': 0,
|
|
'flags': socket.AddressInfo.AI_NUMERICHOST,
|
|
'port': 1234,
|
|
'proto': 0,
|
|
'host': "1.2.3.4",
|
|
'hostname': "www.googleapis.com"
|
|
}]
|
|
config.override(Setting.DRIVE_IPV4, "1.2.3.4")
|
|
assert await resolver.resolve("www.googleapis.com", 1234, 0) == expected
|
|
resolver.toggle()
|
|
assert await resolver.resolve("www.googleapis.com", 1234, 0) == expected
|
|
resolver.toggle()
|
|
assert await resolver.resolve("www.googleapis.com", 1234, 0) == expected
|