Skip to content

Commit 1261e9a

Browse files
committed
Update pinging reconnect test
1 parent ae76e35 commit 1261e9a

File tree

2 files changed

+21
-23
lines changed

2 files changed

+21
-23
lines changed

Diff for: tests/ert/unit_tests/ensemble_evaluator/test_ensemble_client.py

+18-14
Original file line numberDiff line numberDiff line change
@@ -20,27 +20,27 @@ async def test_invalid_server():
2020
async def test_successful_sending(unused_tcp_port):
2121
host = "localhost"
2222
url = f"tcp://{host}:{unused_tcp_port}"
23-
messages_c1 = ["test_1", "test_2", "test_3"]
24-
async with MockZMQServer(unused_tcp_port) as mock_server, Client(url) as c1:
25-
for message in messages_c1:
26-
await c1.send(message)
23+
messages = ["test_1", "test_2", "test_3"]
24+
async with MockZMQServer(unused_tcp_port) as mock_server, Client(url) as client:
25+
for message in messages:
26+
await client.send(message)
2727

28-
for msg in messages_c1:
28+
for msg in messages:
2929
assert msg in mock_server.messages
3030

3131

3232
async def test_retry(unused_tcp_port):
3333
host = "localhost"
3434
url = f"tcp://{host}:{unused_tcp_port}"
3535
client_connection_error_set = False
36-
messages_c1 = ["test_1", "test_2", "test_3"]
36+
messages = ["test_1", "test_2", "test_3"]
3737
async with (
3838
MockZMQServer(unused_tcp_port, signal=2) as mock_server,
39-
Client(url, ack_timeout=0.5) as c1,
39+
Client(url, ack_timeout=0.5) as client,
4040
):
41-
for message in messages_c1:
41+
for message in messages:
4242
try:
43-
await c1.send(message, retries=1)
43+
await client.send(message, retries=1)
4444
except ClientConnectionError:
4545
client_connection_error_set = True
4646
mock_server.signal(0)
@@ -55,14 +55,18 @@ async def test_reconnect_when_missing_ping(unused_tcp_port):
5555
url = f"tcp://{host}:{unused_tcp_port}"
5656

5757
async with (
58-
MockZMQServer(unused_tcp_port, signal=3) as mock_server,
59-
Client(url, ack_timeout=0.5) as c1,
58+
MockZMQServer(unused_tcp_port, signal=0) as mock_server,
59+
Client(url, ack_timeout=0.5) as client,
6060
):
61-
await c1.send("start", retries=1)
61+
await client.send("start", retries=1)
6262

6363
await mock_server.do_ping()
6464
await asyncio.sleep(2)
6565
await mock_server.do_ping()
66-
await c1.send("stop", retries=1)
66+
await client.send("stop", retries=1)
6767

68-
print(mock_server.messages)
68+
# when reconnection happens CONNECT message is sent again
69+
assert mock_server.messages.count("CONNECT") == 2
70+
assert mock_server.messages.count("DISCONNECT") == 1
71+
assert "start" in mock_server.messages
72+
assert "stop" in mock_server.messages

Diff for: tests/ert/utils.py

+3-9
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,6 @@ def __init__(self, port, signal=0):
7272
signal = 0: normal operation
7373
signal = 1: don't send ACK and don't receive messages
7474
signal = 2: don't send ACK, but receive messages
75-
signal = 3: normal operation and store all messages
7675
"""
7776
self.port = port
7877
self.messages = []
@@ -134,18 +133,13 @@ async def _handler(self):
134133
if frame == CONNECT_MSG:
135134
await self.router_socket.send_multipart([dealer, b"", ACK_MSG])
136135
self.dealers.add(dealer)
137-
if self.value == 3:
138-
self.messages.append(frame.decode("utf-8"))
139136
elif frame == DISCONNECT_MSG:
140137
await self.router_socket.send_multipart([dealer, b"", ACK_MSG])
141138
self.dealers.discard(dealer)
142-
if self.value == 3:
143-
self.messages.append(frame.decode("utf-8"))
144-
elif self.value != 1:
139+
elif self.value == 0:
145140
await self.router_socket.send_multipart([dealer, b"", ACK_MSG])
146-
if self.value != 2:
147-
self.messages.append(frame.decode("utf-8"))
148-
141+
if self.value != 1:
142+
self.messages.append(frame.decode("utf-8"))
149143
except asyncio.CancelledError:
150144
break
151145

0 commit comments

Comments
 (0)