from src.models import (PersonExclusionReason, PersonExperimentStatus, PersonStateEvent, PersonStateSnapshot, PersonStateSummary) def test_enums_and_models() -> None: assert PersonExperimentStatus.RESPONDED.value == "responded" assert PersonExclusionReason.NO_FACE_DETECTED.value == "no_face_detected" snapshot = PersonStateSnapshot(1, 2, "t", 1., "tracked", metadata={"日本語": True}) event = PersonStateEvent("status_changed", 1, 2, "t", 1., "new", "tracked") summary = PersonStateSummary("exp", 1) assert snapshot.metadata["日本語"] and event.new_status == "tracked" assert summary.completed is False and summary.exclusion_reason == "none"