mirror of
https://github.com/meshcore-dev/meshcore_py.git
synced 2026-06-11 11:56:18 +00:00
Seven new tests in tests/unit/test_connection_manager.py covering all four G3 findings: - test_g3_tcp_connect_returns_plain_string (F01): CONNECTED event payload contains a plain string, not an asyncio.Future. - test_g3_reconnect_loop_does_not_compound (F03): after max_attempts failures, exactly that many connect() calls are made — no fan-out. - test_g3_disconnect_cancels_reconnect_loop (F03): disconnect() mid-loop cancels the single task cleanly. - test_g3_reconnect_callback_called_after_reconnect (F02): callback is invoked after a successful reconnect. - test_g3_reconnect_callback_failure_does_not_crash_loop (F02): callback exception is logged, reconnect still succeeds. - test_g3_connect_none_is_soft_failure (N11): connect() returning None does not set _is_connected or emit CONNECTED. - test_g3_no_reconnect_callback_is_noop (N11/F02): no callback provided — reconnect works, backwards-compatible. Refs: Forensics report findings F01, F02, F03, N11