Add defined port fallback for network echo tests

The 0 aka 'any' port doesn't for on Mac, but, only, using defined port
may interfere with running multiple tests on CI.
pull/3436/head
Bartek Szatkowski 2016-12-13 16:11:26 +00:00
parent 859c160ddc
commit b77f663520
2 changed files with 8 additions and 2 deletions

View File

@ -128,7 +128,10 @@ class TCPEchoClientTest(BaseHostTest):
:return:
"""
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect((target_ip, 8000)) # Target IP, 'random' port
try:
s.connect((target_ip, 0)) # Target IP, any port
except socket.error:
s.connect((target_ip, 8000)) # Target IP, 'random' port
ip = s.getsockname()[0]
s.close()
return ip

View File

@ -55,7 +55,10 @@ class UDPEchoClientTest(BaseHostTest):
:return:
"""
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect((target_ip, 8000)) # Target IP, 'random' port
try:
s.connect((target_ip, 0)) # Target IP, any port
except socket.error:
s.connect((target_ip, 8000)) # Target IP, 'random' port
ip = s.getsockname()[0]
s.close()
return ip