diff options
Diffstat (limited to 'tests/helpers.py')
-rw-r--r-- | tests/helpers.py | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/tests/helpers.py b/tests/helpers.py index b36d6d7..f344e1c 100644 --- a/tests/helpers.py +++ b/tests/helpers.py @@ -2,15 +2,16 @@ import functools import os import os.path import random +import re +import socket import tarfile import tempfile import time -import re -import six -import socket import docker +import paramiko import pytest +import six def make_tree(dirs, files): @@ -118,10 +119,18 @@ def assert_cat_socket_detached_with_keys(sock, inputs): # If we're using a Unix socket, the sock.send call will fail with a # BrokenPipeError ; INET sockets will just stop receiving / sending data # but will not raise an error - if getattr(sock, 'family', -9) == getattr(socket, 'AF_UNIX', -1): - with pytest.raises(socket.error): + if isinstance(sock, paramiko.Channel): + with pytest.raises(OSError): sock.sendall(b'make sure the socket is closed\n') else: + if getattr(sock, 'family', -9) == getattr(socket, 'AF_UNIX', -1): + # We do not want to use pytest.raises here because future versions + # of the daemon no longer cause this to raise an error. + try: + sock.sendall(b'make sure the socket is closed\n') + except socket.error: + return + sock.sendall(b"make sure the socket is closed\n") data = sock.recv(128) # New in 18.06: error message is broadcast over the socket when reading |