]> granicus.if.org Git - python/commitdiff
bpo-33353: test_asyncio uses smaller sendfile data (#7083)
authorVictor Stinner <vstinner@redhat.com>
Wed, 23 May 2018 22:56:00 +0000 (00:56 +0200)
committerGitHub <noreply@github.com>
Wed, 23 May 2018 22:56:00 +0000 (00:56 +0200)
bpo-32622, bpo-33353: sendfile() tests of test_asyncio use socket
buffers of 1 kB "to test on relative small data sets". Send only
160 KiB rather 10 MB to make the test much faster.

Shrink also SendfileBase.DATA from 1600 KiB to 160 KiB.

On Linux, 3 test_sock_sendfile_mix_with_regular_send() runs now take
less than 1 second, instead of 18 seconds.

On FreeBSD, the 3 tests didn't hang, but took 3 minutes. Now
the 3 tests pass in less than 1 seconds.

Lib/test/test_asyncio/test_events.py

index 66c77b976dce1db537a84793e82d37eefb65458c..c9e39b2b0321d89701e6bbecb0313fb06156ce81 100644 (file)
@@ -2095,7 +2095,7 @@ class SubprocessTestsMixin:
 
 class SendfileBase:
 
-    DATA = b"12345abcde" * 160 * 1024  # 160 KiB
+    DATA = b"12345abcde" * 16 * 1024  # 160 KiB
 
     @classmethod
     def setUpClass(cls):
@@ -2208,7 +2208,7 @@ class SockSendfileMixin(SendfileBase):
         self.assertEqual(self.file.tell(), 0)
 
     def test_sock_sendfile_mix_with_regular_send(self):
-        buf = b'1234567890' * 1024 * 1024  # 10 MB
+        buf = b"X" * 160 * 1024  # 160 KiB
         sock, proto = self.prepare_socksendfile()
         self.run_loop(self.loop.sock_sendall(sock, buf))
         ret = self.run_loop(self.loop.sock_sendfile(sock, self.file))