def test_config_with_correct_server_config_pick_server_3(tmpdir): p = tmpdir.mkdir('conf').join('dispatch.conf') p.write('server=/com/127.0.0.1') d = DispatchResolver(str(p.realpath()), servers=[("127.0.0.2", 53)]) queries = [dns.Query(b'www.example.example.com', dns.A, dns.IN)] addr = d.pickServer(queries) assert addr == ("127.0.0.1", 53)
def test_config_with_correct_server_config_of_only_root_domain_and_only_address(tmpdir): p = tmpdir.mkdir('conf').join('dispatch.conf') p.write('server=/com/127.0.0.1') d = DispatchResolver(str(p.realpath()), servers=[("127.0.0.2", 53)]) queries = [dns.Query(b'com', dns.A, dns.IN)] addr = d.pickServer(queries) assert addr == ("127.0.0.1", 53)
def test_config_with_correct_server_config_of_normal_domain_and_address_with_port(tmpdir): p = tmpdir.mkdir('conf').join('dispatch.conf') p.write('server=/example.com/127.0.0.1#5353') d = DispatchResolver(str(p.realpath()), servers=[("127.0.0.2", 53)]) queries = [dns.Query(b'example.com', dns.A, dns.IN)] addr = d.pickServer(queries) assert addr == ("127.0.0.1", 5353)
def test_config_with_incorrect_server_address_config(tmpdir): p = tmpdir.mkdir('conf').join('dispatch.conf') p.write('server=/example.com/127.0.0.') d = DispatchResolver(str(p.realpath()), servers=[("127.0.0.2", 53)]) queries = [dns.Query(b'example.com', dns.A, dns.IN)] addr = d.pickServer(queries) # fallback to the default upstream server assert addr == ("127.0.0.2", 53)