summaryrefslogtreecommitdiff
path: root/tests/test_ddr.py
blob: ce38d0e94b40e414b9ec9a1241bc082a8e84a9ac (plain)
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
# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license

import asyncio
import time

import pytest

import dns.asyncbackend
import dns.asyncresolver
import dns.resolver
import dns.nameserver

import tests.util


@pytest.mark.skipif(
    not tests.util.is_internet_reachable(), reason="Internet not reachable"
)
def test_basic_ddr_sync():
    for nameserver in ["1.1.1.1", "8.8.8.8"]:
        res = dns.resolver.Resolver(configure=False)
        res.nameservers = [nameserver]
        res.try_ddr()
        for nameserver in res.nameservers:
            assert isinstance(nameserver, dns.nameserver.Nameserver)
            assert nameserver.kind() != "Do53"


@pytest.mark.skipif(
    not tests.util.is_internet_reachable(), reason="Internet not reachable"
)
def test_basic_ddr_async():
    async def run():
        dns.asyncbackend._default_backend = None
        for nameserver in ["1.1.1.1", "8.8.8.8"]:
            res = dns.asyncresolver.Resolver(configure=False)
            res.nameservers = [nameserver]
            await res.try_ddr()
            for nameserver in res.nameservers:
                assert isinstance(nameserver, dns.nameserver.Nameserver)
                assert nameserver.kind() != "Do53"

    asyncio.run(run())