diff --git a/tests-functional/clients/signals.py b/tests-functional/clients/signals.py index 49e098a084..d6ddfb7dbc 100644 --- a/tests-functional/clients/signals.py +++ b/tests-functional/clients/signals.py @@ -16,6 +16,7 @@ class SignalType(Enum): NODE_READY = "node.ready" NODE_STARTED = "node.started" NODE_LOGIN = "node.login" + NODE_LOGOUT = "node.stopped" MEDIASERVER_STARTED = "mediaserver.started" WALLET_SUGGESTED_ROUTES = "wallet.suggested.routes" WALLET_ROUTER_SIGN_TRANSACTIONS = "wallet.router.sign-transactions" @@ -98,6 +99,10 @@ def wait_for_login(self): assert not signal["event"]["error"] return signal + def wait_for_logout(self): + signal = self.wait_for_signal(SignalType.NODE_LOGOUT.value) + return signal + def find_signal_containing_pattern(self, signal_type, event_pattern, timeout=20): start_time = time.time() while True: diff --git a/tests-functional/tests/test_cases.py b/tests-functional/tests/test_cases.py index cfdc932daf..6787dd8dba 100644 --- a/tests-functional/tests/test_cases.py +++ b/tests-functional/tests/test_cases.py @@ -206,6 +206,7 @@ class MessengerTestCase(NetworkConditionTestCase): SignalType.MESSAGES_NEW.value, SignalType.MESSAGE_DELIVERED.value, SignalType.NODE_LOGIN.value, + SignalType.NODE_LOGOUT.value ] @pytest.fixture(scope="function", autouse=False) diff --git a/tests-functional/tests/test_waku_rpc.py b/tests-functional/tests/test_waku_rpc.py index 0be06f61f3..ec6ee73fad 100644 --- a/tests-functional/tests/test_waku_rpc.py +++ b/tests-functional/tests/test_waku_rpc.py @@ -59,4 +59,7 @@ def setup_two_nodes(self, request): key_uid = user.node_login_event["event"]["account"]["key-uid"] user.wakuext_service.set_light_client(True) user.logout() + user.wait_for_logout() user.login(key_uid) + user.prepare_wait_for_signal("node.login", 1) + user.wait_for_login()