from django.test import TestCase from access_core.identity.models import Beneficiary from access_core.intake.models import IntakeRecord from access_core.monitoring.models import CarePeriod, ClinicalTrack, EligibilityCheck class ClinicalTrackTest(TestCase): def test_create_track(self): track = ClinicalTrack.objects.create( track_name="CKM", description="Cardiometabolic" ) self.assertEqual(str(track), "CKM") self.assertTrue(track.is_active) class CarePeriodTest(TestCase): def test_create_care_period(self): track = ClinicalTrack.objects.create(track_name="CKM") intake = IntakeRecord.objects.create( external_form_id="synth-cp-001", first_name="CP", last_name="Patient", dob="1960-01-01", sex="female", is_synthetic=True, ) ben = Beneficiary.objects.create( intake_record=intake, first_name="CP", last_name="Patient", dob="1960-01-01", sex="female", is_synthetic=True, ) cp = CarePeriod.objects.create( beneficiary=ben, clinical_track=track, start_date="2026-01-01", operational_status="active", ) self.assertEqual(cp.operational_status, "active") class EligibilityCheckTest(TestCase): def test_create_eligibility(self): from access_core.monitoring.models import ( EligibilityRequest, EligibilityRequestCondition, ) track = ClinicalTrack.objects.create(track_name="CKM") intake = IntakeRecord.objects.create( external_form_id="synth-elig-001", first_name="Elig", last_name="Patient", dob="1955-01-01", sex="male", is_synthetic=True, ) request = EligibilityRequest.objects.create( intake_record=intake, clinical_track=track ) EligibilityRequestCondition.objects.create( request=request, icd10_code="N18", icd10_description="Chronic kidney disease", ) check = EligibilityCheck.objects.create( intake_record=intake, eligibility_request=request, requested_track=track, check_status="eligible", ) self.assertEqual(check.check_status, "eligible")