diff --git a/tests/end-2-end/test_rpc_widgets_e2e.py b/tests/end-2-end/test_rpc_widgets_e2e.py index e980c50e..b6dc0b8c 100644 --- a/tests/end-2-end/test_rpc_widgets_e2e.py +++ b/tests/end-2-end/test_rpc_widgets_e2e.py @@ -145,7 +145,14 @@ def test_available_widgets(qtbot, connected_client_gui_obj): # Check that the number of top level widgets is still the same. As the cleanup is done by the # qt event loop, we need to wait for the qtbot to finish the cleanup - qtbot.waitUntil(lambda: len(gui._server_registry) == top_level_widgets_count) + try: + qtbot.waitUntil(lambda: len(gui._server_registry) == top_level_widgets_count) + except Exception as exc: + raise RuntimeError( + f"Widget {object_name} was not removed properly. The number of top level widgets " + f"is {len(gui._server_registry)} instead of {top_level_widgets_count}. The following " + f"widgets are still registered: {list(gui._server_registry.keys())}." + ) from exc # Number of widgets with parent_id == None, should be 2 widgets = [ widget