乱点提示 @点击者:markdown 内联提及 <@openid>

This commit is contained in:
snowy-yang committed 2026-10-05 10:19:04 +08:00
1 parent 755013b9db
commit 3fed0b0db1
3 files changed
+79 -9

No files matched your search

+8 -5
View File
@@ -142,15 +142,17 @@ def test_foreign_clicker_muted_on_third_click(tmp_path, monkeypatch):
# 每次点击都回应了互动
assert len(fake.interactions_responded) == 3
# 前两次只有警告,第三次才禁言 5 分钟
warns = [m["content"] for m in fake.group_messages[:2]]
assert all("不是给你的" in (c or "") for c in warns)
# 前两次只有警告(markdown 内联提及点击者),第三次才禁言 5 分钟
warns = [(m["markdown"] or "") for m in fake.group_messages[:2]]
assert all("不是给你的" in md for md in warns)
assert all(f"<@MEMBER_B>" in md for md in warns)
mutes = [j for p, j in fake.raw_posts if p.endswith("/restrict_chat_setting")]
assert len(mutes) == 1
entry = mutes[0]["members"][0]
assert entry["op"] == "add"
assert entry["member_openid"] == "MEMBER_B"
assert "已禁言 5 分钟" in (fake.group_messages[-1]["content"] or "")
assert "已禁言 5 分钟" in (fake.group_messages[-1]["markdown"] or "")
assert "<@MEMBER_B>" in (fake.group_messages[-1]["markdown"] or "")
# 被试者的记录不受影响
assert state.get(pending_key("GROUP1", "MEMBER_A")) is not None
state.pop(pending_key("GROUP1", "MEMBER_A"))
@@ -173,6 +175,7 @@ def test_stale_button_click_not_punished(tmp_path, monkeypatch):
await asyncio.sleep(0.03)
assert fake.raw_posts == [] # 三次都不触发禁言
assert all("不是给你的" in (m["content"] or "") for m in fake.group_messages)
assert all("不是给你的" in (m["markdown"] or "") for m in fake.group_messages)
assert all("<@MEMBER_C>" in (m["markdown"] or "") for m in fake.group_messages)
asyncio.run(scenario())