From ac9a2d0c254d8923804827d6247604d99b810b4c Mon Sep 17 00:00:00 2001 From: chengyongru Date: Thu, 14 May 2026 18:59:51 +0800 Subject: [PATCH] test(pairing): cover _PENDING_USER_TURN_KEY cleanup and None allow_from - Assert pending_user_turn is cleared from session metadata after shortcut commands (e.g. /help) in test_auto_compact.py. - Add test for None allow_from / allowFrom values in test_base_channel.py to prevent TypeError regressions. --- tests/agent/test_auto_compact.py | 1 + tests/channels/test_base_channel.py | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/tests/agent/test_auto_compact.py b/tests/agent/test_auto_compact.py index 5d4946b02..0bc02a694 100644 --- a/tests/agent/test_auto_compact.py +++ b/tests/agent/test_auto_compact.py @@ -434,6 +434,7 @@ class TestAutoCompactIdleDetection: assert session_after.messages[0].get("_command") is True assert session_after.messages[1]["role"] == "assistant" assert session_after.messages[1].get("_command") is True + assert AgentLoop._PENDING_USER_TURN_KEY not in session_after.metadata await loop.close_mcp() @pytest.mark.asyncio diff --git a/tests/channels/test_base_channel.py b/tests/channels/test_base_channel.py index 1c870d43b..dca1b8a7b 100644 --- a/tests/channels/test_base_channel.py +++ b/tests/channels/test_base_channel.py @@ -44,6 +44,14 @@ def test_is_allowed_denies_empty_dict_allow_from() -> None: assert channel.is_allowed("alice") is False +def test_is_allowed_handles_none_allow_from() -> None: + channel = _DummyChannel({"allow_from": None}, MessageBus()) + assert channel.is_allowed("alice") is False + + channel2 = _DummyChannel({"allowFrom": None}, MessageBus()) + assert channel2.is_allowed("alice") is False + + def test_is_allowed_star_allows_all() -> None: channel = _DummyChannel({"allowFrom": ["*"]}, MessageBus()) assert channel.is_allowed("anyone") is True