You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

16 lines
933 B

from src.analysis_table_builder import AnalysisTableBuilder
from src.config_loader import UnifiedLogSettings
from src.models import PersonStateSummary
CFG=UnifiedLogSettings(True,"x",True,True,True,True,30,True,True,True,True,False,False,"camera",True)
def test_prompt_control_disabled_records() -> None:
b=AnalysisTableBuilder(CFG,"sid")
for mode in ("prompt","control",None):
s=PersonStateSummary("exp",1,voice_mode=mode,prompt_played=mode=="prompt",pseudo_prompt=mode=="control",
response_detected=True,reaction_time_sec=.8,turn_confirmed=True,turn_level="weak",
max_yaw_delta_toward_signage=25.,valid_for_turn_analysis=False,exclusion_reason="no_pose_estimated")
r=b.build_record(s)
assert r.prompt_condition==(mode or "disabled") and r.camera_position_note=="camera"
assert r.response_detected and r.reaction_time_sec==.8 and r.valid_for_turn_analysis is False