Phase 11
This commit is contained in:
commit
c5bcb95d74
172 files changed
+9487
No files matched your search
@@ -0,0 +1,27 @@
|
||||
from src.config_loader import PersonStateSettings
|
||||
from src.person_state_rules import choose_status, final_exclusion_reason, normalize_exclusion_reason
|
||||
|
||||
|
||||
CFG = PersonStateSettings(True, .5, False, True, False, True, True)
|
||||
|
||||
|
||||
def test_status_priority_chain() -> None:
|
||||
assert choose_status(tracked=True) == "tracked"
|
||||
assert choose_status(tracked=True, inside_region=True) == "inside_region"
|
||||
assert choose_status(eligible=True) == "eligible"
|
||||
assert choose_status(prompt_played=True) == "prompted"
|
||||
assert choose_status(pseudo_prompt=True) == "pseudo_prompted"
|
||||
assert choose_status(observing=True) == "observing_response"
|
||||
assert choose_status(responded=True, lost=True) == "lost"
|
||||
assert choose_status(responded=True) == "responded"
|
||||
assert choose_status(no_response=True) == "no_response"
|
||||
assert choose_status(finalized=True) == "completed"
|
||||
assert choose_status(excluded=True, finalized=True) == "excluded"
|
||||
|
||||
|
||||
def test_exclusion_rules() -> None:
|
||||
assert final_exclusion_reason(CFG, .1, True, True, None, None, False, True, False) == "track_too_short"
|
||||
assert final_exclusion_reason(CFG, 1., True, False, None, None, False, False, False) == "not_prompt_eligible"
|
||||
assert final_exclusion_reason(CFG, 1., True, True, None, "prompt_failed", False, True, False) == "prompt_failed"
|
||||
assert normalize_exclusion_reason("no_turn_state") == "response_not_evaluable"
|
||||
|
||||
Reference in new issue
Block a user