Skip to content

Commit fe453bc

Browse files
committed
move test case, remove test support code from asyncio
1 parent 9ad2430 commit fe453bc

File tree

3 files changed

+29
-41
lines changed

3 files changed

+29
-41
lines changed

Lib/asyncio/base_events.py

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -200,17 +200,6 @@ def _set_nodelay(sock):
200200
pass
201201

202202

203-
if hasattr(socket, 'TCP_QUICKACK'):
204-
def _set_quickack(sock, val):
205-
if (sock.family in {socket.AF_INET, socket.AF_INET6} and
206-
sock.type == socket.SOCK_STREAM and
207-
sock.proto == socket.IPPROTO_TCP):
208-
sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_QUICKACK, val)
209-
else:
210-
def _set_quickack(sock, val):
211-
pass
212-
213-
214203
def _check_ssl_socket(sock):
215204
if ssl is not None and isinstance(sock, ssl.SSLSocket):
216205
raise TypeError("Socket cannot be of type SSLSocket")

Lib/test/test_asyncio/test_base_events.py

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -2228,35 +2228,5 @@ def test_set_nodelay(self):
22282228
self.check_set_nodelay(sock)
22292229

22302230

2231-
def check_set_quickack(self, sock):
2232-
# quickack already true by default on some OSes
2233-
opt = sock.getsockopt(socket.IPPROTO_TCP, socket.TCP_QUICKACK)
2234-
if opt:
2235-
base_events._set_quickack(sock, 0)
2236-
2237-
opt = sock.getsockopt(socket.IPPROTO_TCP, socket.TCP_QUICKACK)
2238-
self.assertFalse(opt)
2239-
2240-
base_events._set_quickack(sock, 1)
2241-
2242-
opt = sock.getsockopt(socket.IPPROTO_TCP, socket.TCP_QUICKACK)
2243-
self.assertTrue(opt)
2244-
2245-
@unittest.skipUnless(hasattr(socket, 'TCP_QUICKACK'),
2246-
'need socket.TCP_QUICKACK')
2247-
def test_set_quickack(self):
2248-
with self.subTest('non-blocking'):
2249-
sock = socket.socket(family=socket.AF_INET, type=socket.SOCK_STREAM,
2250-
proto=socket.IPPROTO_TCP)
2251-
with sock:
2252-
self.check_set_quickack(sock)
2253-
with self.subTest('blocking'):
2254-
sock = socket.socket(family=socket.AF_INET, type=socket.SOCK_STREAM,
2255-
proto=socket.IPPROTO_TCP)
2256-
with sock:
2257-
sock.setblocking(False)
2258-
self.check_set_quickack(sock)
2259-
2260-
22612231
if __name__ == '__main__':
22622232
unittest.main()

Lib/test/test_socket.py

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6826,6 +6826,35 @@ class TestMacOSTCPFlags(unittest.TestCase):
68266826
def test_tcp_keepalive(self):
68276827
self.assertTrue(socket.TCP_KEEPALIVE)
68286828

6829+
class TestQuickackFlag(unittest.TestCase):
6830+
def test_tcp_keepalive(self):
6831+
self.assertTrue(socket.TCP_KEEPALIVE)
6832+
6833+
@unittest.skipUnless(hasattr(socket, 'TCP_QUICKACK'), 'need socket.TCP_QUICKACK')
6834+
class TestQuickackFlag(unittest.TestCase):
6835+
def check_set_quickack(self, sock):
6836+
# quickack already true by default on some OS distributions
6837+
opt = sock.getsockopt(socket.IPPROTO_TCP, socket.TCP_QUICKACK)
6838+
if opt:
6839+
sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_QUICKACK, 0)
6840+
6841+
opt = sock.getsockopt(socket.IPPROTO_TCP, socket.TCP_QUICKACK)
6842+
self.assertFalse(opt)
6843+
6844+
sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_QUICKACK, 1)
6845+
6846+
opt = sock.getsockopt(socket.IPPROTO_TCP, socket.TCP_QUICKACK)
6847+
self.assertTrue(opt)
6848+
6849+
def test_set_quickack(self):
6850+
for blocking in (False, True):
6851+
with self.subTest(blocking=blocking):
6852+
sock = socket.socket(family=socket.AF_INET, type=socket.SOCK_STREAM,
6853+
proto=socket.IPPROTO_TCP)
6854+
with sock:
6855+
sock.setblocking(blocking)
6856+
self.check_set_quickack(sock)
6857+
68296858

68306859
@unittest.skipUnless(sys.platform.startswith("win"), "requires Windows")
68316860
class TestMSWindowsTCPFlags(unittest.TestCase):

0 commit comments

Comments
 (0)