mirror of
https://github.com/BOSWatch/BW3-Core.git
synced 2025-12-06 07:12:04 +01:00
changes in client
This commit is contained in:
parent
0445dc38cc
commit
ae36cf8045
|
|
@ -76,13 +76,14 @@ class TCPClient:
|
||||||
@param data: data to send to the server
|
@param data: data to send to the server
|
||||||
@return True or False"""
|
@return True or False"""
|
||||||
try:
|
try:
|
||||||
|
if not self._sock: # check if socket is still available
|
||||||
|
logging.error("cannot receive - no connection established")
|
||||||
|
return False
|
||||||
logging.debug("transmitting: %s", data)
|
logging.debug("transmitting: %s", data)
|
||||||
header = str(len(data)).ljust(HEADERSIZE)
|
header = str(len(data)).ljust(HEADERSIZE)
|
||||||
self._sock.sendall(bytes(header + data, "utf-8"))
|
self._sock.sendall(bytes(header + data, "utf-8"))
|
||||||
logging.debug("transmitted...")
|
logging.debug("transmitted...")
|
||||||
return True
|
return True
|
||||||
except AttributeError:
|
|
||||||
logging.error("cannot transmit - no connection established")
|
|
||||||
except ConnectionResetError:
|
except ConnectionResetError:
|
||||||
logging.error("cannot transmit - host closed connection")
|
logging.error("cannot transmit - host closed connection")
|
||||||
return False
|
return False
|
||||||
|
|
@ -93,6 +94,7 @@ class TCPClient:
|
||||||
@return received data"""
|
@return received data"""
|
||||||
try:
|
try:
|
||||||
if not self._sock: # check if socket is still available
|
if not self._sock: # check if socket is still available
|
||||||
|
logging.error("cannot receive - no connection established")
|
||||||
return False
|
return False
|
||||||
read, _, _ = select.select([self._sock], [], [], 1)
|
read, _, _ = select.select([self._sock], [], [], 1)
|
||||||
if not read: # check if there is something to read
|
if not read: # check if there is something to read
|
||||||
|
|
@ -104,8 +106,6 @@ class TCPClient:
|
||||||
received = self._sock.recv(length).decode("utf-8")
|
received = self._sock.recv(length).decode("utf-8")
|
||||||
logging.debug("received %d bytes: %s", length, received)
|
logging.debug("received %d bytes: %s", length, received)
|
||||||
return received
|
return received
|
||||||
except AttributeError:
|
|
||||||
logging.error("cannot receive - no connection established")
|
|
||||||
except ConnectionResetError:
|
except ConnectionResetError:
|
||||||
logging.error("cannot receive - host closed connection")
|
logging.error("cannot receive - host closed connection")
|
||||||
except socket.timeout: # pragma: no cover
|
except socket.timeout: # pragma: no cover
|
||||||
|
|
@ -122,7 +122,7 @@ class TCPClient:
|
||||||
self._sock.sendall(bytes(header + aliveMsg, "utf-8"))
|
self._sock.sendall(bytes(header + aliveMsg, "utf-8"))
|
||||||
return True
|
return True
|
||||||
except (AttributeError, BrokenPipeError):
|
except (AttributeError, BrokenPipeError):
|
||||||
logging.exception("Unknown error: ")
|
logging.error("Unknown error: ")
|
||||||
except ConnectionResetError:
|
except ConnectionResetError:
|
||||||
pass
|
pass
|
||||||
return False
|
return False
|
||||||
|
|
|
||||||
|
|
@ -82,6 +82,13 @@ def test_clientConnect(getClient, getRunningServer):
|
||||||
assert getClient.disconnect()
|
assert getClient.disconnect()
|
||||||
|
|
||||||
|
|
||||||
|
def test_doubleConnect(getClient, getRunningServer):
|
||||||
|
"""!Connect to a server twice"""
|
||||||
|
assert getClient.connect()
|
||||||
|
assert getClient.connect()
|
||||||
|
assert getClient.disconnect()
|
||||||
|
|
||||||
|
|
||||||
def test_clientReconnect(getClient, getRunningServer):
|
def test_clientReconnect(getClient, getRunningServer):
|
||||||
"""!Try a reconnect after a established connection"""
|
"""!Try a reconnect after a established connection"""
|
||||||
assert getClient.connect()
|
assert getClient.connect()
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue