Files
relay-bot/tests/test_proactive.py
2026-07-24 22:36:04 +03:00

30 lines
1.0 KiB
Python

from app.llm.schemas import Classification
from app.proactive.policy import decide
FACT = Classification(True, True, False, False, False, 0.95)
def test_safe_policy_allows_high_confidence_existing_fact() -> None:
assert decide(
"safe", FACT, is_mention=False, duplicate=False, cooldown=False, threshold=0.86
).respond
def test_policy_rejects_new_technical_decision_and_duplicates() -> None:
decision = Classification(True, True, True, False, False, 0.99)
assert not decide(
"active", decision, is_mention=False, duplicate=False, cooldown=False, threshold=0.86
).respond
assert not decide(
"safe", FACT, is_mention=False, duplicate=True, cooldown=False, threshold=0.86
).respond
def test_mentions_mode_requires_bot_mention() -> None:
assert not decide(
"mentions", FACT, is_mention=False, duplicate=False, cooldown=False, threshold=0.86
).respond
assert decide(
"mentions", FACT, is_mention=True, duplicate=False, cooldown=False, threshold=0.86
).respond