[Python-checkins] bpo-23749: Make start-tls tests more stable on win7 buildbot (GH-5409)

Yury Selivanov webhook-mailer at python.org
Mon Jan 29 00:25:08 EST 2018


https://github.com/python/cpython/commit/1e5b25b8c0c45ccfd58da2cb82fdf231c6823fef
commit: 1e5b25b8c0c45ccfd58da2cb82fdf231c6823fef
branch: master
author: Yury Selivanov <yury at magic.io>
committer: GitHub <noreply at github.com>
date: 2018-01-29T00:25:05-05:00
summary:

bpo-23749: Make start-tls tests more stable on win7 buildbot (GH-5409)

To mitigate the situation when the buildbot is under load
and is unable to send/receive data fast enough:

* reduce the size of the payload
* set a generous timeout for socket ops

files:
M Lib/test/test_asyncio/test_sslproto.py

diff --git a/Lib/test/test_asyncio/test_sslproto.py b/Lib/test/test_asyncio/test_sslproto.py
index 475f494b6705..c4c30bedb4ec 100644
--- a/Lib/test/test_asyncio/test_sslproto.py
+++ b/Lib/test/test_asyncio/test_sslproto.py
@@ -2,6 +2,7 @@
 
 import os
 import logging
+import time
 import unittest
 from unittest import mock
 try:
@@ -171,12 +172,14 @@ def new_loop(self):
         raise NotImplementedError
 
     def test_start_tls_client_1(self):
-        HELLO_MSG = b'1' * 1024 * 1024 * 5
+        HELLO_MSG = b'1' * 1024 * 1024
 
         server_context = test_utils.simple_server_sslcontext()
         client_context = test_utils.simple_client_sslcontext()
 
         def serve(sock):
+            sock.settimeout(5)
+
             data = sock.recv_all(len(HELLO_MSG))
             self.assertEqual(len(data), len(HELLO_MSG))
 
@@ -205,6 +208,8 @@ def eof_received(self):
                 self.on_eof.set_result(True)
 
         async def client(addr):
+            await asyncio.sleep(0.5, loop=self.loop)
+
             on_data = self.loop.create_future()
             on_eof = self.loop.create_future()
 
@@ -225,12 +230,15 @@ def eof_received(self):
                 asyncio.wait_for(client(srv.addr), loop=self.loop, timeout=10))
 
     def test_start_tls_server_1(self):
-        HELLO_MSG = b'1' * 1024 * 1024 * 5
+        HELLO_MSG = b'1' * 1024 * 1024
 
         server_context = test_utils.simple_server_sslcontext()
         client_context = test_utils.simple_client_sslcontext()
 
         def client(sock, addr):
+            time.sleep(0.5)
+            sock.settimeout(5)
+
             sock.connect(addr)
             data = sock.recv_all(len(HELLO_MSG))
             self.assertEqual(len(data), len(HELLO_MSG))



More information about the Python-checkins mailing list