diff options
-rw-r--r-- | test/unit/applications/websockets.py | 16 | ||||
-rw-r--r-- | test/unit/http.py | 18 |
2 files changed, 30 insertions, 4 deletions
diff --git a/test/unit/applications/websockets.py b/test/unit/applications/websockets.py index 309d37a3..fc15e8e4 100644 --- a/test/unit/applications/websockets.py +++ b/test/unit/applications/websockets.py @@ -52,7 +52,11 @@ class TestApplicationWebsocket(TestApplicationProto): ) resp = '' - while select.select([sock], [], [], 60)[0]: + while True: + rlist = select.select([sock], [], [], 60)[0] + if not rlist: + self.fail('Can\'t read response from server.') + resp += sock.recv(4096).decode() if ( @@ -73,7 +77,15 @@ class TestApplicationWebsocket(TestApplicationProto): def frame_read(self, sock, read_timeout=60): def recv_bytes(sock, bytes): data = b'' - while select.select([sock], [], [], read_timeout)[0]: + while True: + rlist = select.select([sock], [], [], read_timeout)[0] + if not rlist: + # For all current cases if the "read_timeout" was changed + # than test do not expect to get a response from server. + if read_timeout == 60: + self.fail('Can\'t read response from server.') + break + data += sock.recv(bytes - len(data)) if len(data) == bytes: diff --git a/test/unit/http.py b/test/unit/http.py index 8c71825a..8aacf18b 100644 --- a/test/unit/http.py +++ b/test/unit/http.py @@ -173,11 +173,25 @@ class TestHTTP(TestUnit): return self.http('PUT', **kwargs) def recvall(self, sock, **kwargs): - timeout = 60 if 'read_timeout' not in kwargs else kwargs['read_timeout'] + timeout_default = 60 + + timeout = ( + timeout_default + if 'read_timeout' not in kwargs + else kwargs['read_timeout'] + ) buff_size = 4096 if 'buff_size' not in kwargs else kwargs['buff_size'] data = b'' - while select.select([sock], [], [], timeout)[0]: + while True: + rlist = select.select([sock], [], [], timeout)[0] + if not rlist: + # For all current cases if the "read_timeout" was changed + # than test do not expect to get a response from server. + if timeout == timeout_default: + self.fail('Can\'t read response from server.') + break + try: part = sock.recv(buff_size) except: |