summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/test_async.py14
1 files changed, 13 insertions, 1 deletions
diff --git a/tests/test_async.py b/tests/test_async.py
index e9a26bb..0252f22 100644
--- a/tests/test_async.py
+++ b/tests/test_async.py
@@ -17,6 +17,7 @@
import asyncio
import socket
+import sys
import time
import unittest
@@ -152,6 +153,7 @@ class MiscQuery(unittest.TestCase):
@unittest.skipIf(not _network_available, "Internet not reachable")
class AsyncTests(unittest.TestCase):
+ connect_udp = sys.platform == 'win32'
def setUp(self):
self.backend = dns.asyncbackend.set_default_backend('asyncio')
@@ -261,9 +263,13 @@ class AsyncTests(unittest.TestCase):
for address in query_addresses:
qname = dns.name.from_text('dns.google.')
async def run():
+ if self.connect_udp:
+ dtuple=(address, 53)
+ else:
+ dtuple=None
async with await self.backend.make_socket(
dns.inet.af_for_address(address),
- socket.SOCK_DGRAM) as s:
+ socket.SOCK_DGRAM, 0, None, dtuple) as s:
q = dns.message.make_query(qname, dns.rdatatype.A)
return await dns.asyncquery.udp(q, address, sock=s,
timeout=2)
@@ -373,6 +379,8 @@ class AsyncTests(unittest.TestCase):
self.assertFalse(tcp)
def testUDPReceiveQuery(self):
+ if self.connect_udp:
+ self.skipTest('test needs connectionless sockets')
async def run():
async with await self.backend.make_socket(
socket.AF_INET, socket.SOCK_DGRAM,
@@ -392,6 +400,8 @@ class AsyncTests(unittest.TestCase):
self.assertEqual(sender_address, recv_address)
def testUDPReceiveTimeout(self):
+ if self.connect_udp:
+ self.skipTest('test needs connectionless sockets')
async def arun():
async with await self.backend.make_socket(socket.AF_INET,
socket.SOCK_DGRAM, 0,
@@ -430,6 +440,7 @@ try:
return trio.run(afunc)
class TrioAsyncTests(AsyncTests):
+ connect_udp = False
def setUp(self):
self.backend = dns.asyncbackend.set_default_backend('trio')
@@ -453,6 +464,7 @@ try:
return curio.run(afunc)
class CurioAsyncTests(AsyncTests):
+ connect_udp = False
def setUp(self):
self.backend = dns.asyncbackend.set_default_backend('curio')