public void should_Create_Encounter() { testIQPatientId = -1; var patient = _testEncounters.First().Patient; Assert.NotNull(patient); IQLocation location = _emrRepository.GetLocation(locationId); Assert.NotNull(location); _createEmrPatientHandler.Handle(new PatientCreated(patient, location)); Assert.That(_createEmrPatientHandler.GetSqlActions(), Is.Not.Empty); _emrRepository.CreatePatient(_createEmrPatientHandler.GetSqlActions(), patient.UuId); var iqpatient = _emrRepository.GetPatient(patient.UuId); Assert.NotNull(iqpatient); Assert.That(iqpatient.ClientCode, Is.EqualTo(patient.Clientcode)); testIQPatientId = iqpatient.Id; Assert.True(testIQPatientId > -1); Debug.Print($"New Patient:{iqpatient.ToStringDetail()}"); _createEmrEncounterHandler.Handle(_encounterCreated); Assert.That(_createEmrEncounterHandler.GetSqlActions(), Is.Not.Empty); _emrRepository.CreateEncounter(_createEmrEncounterHandler.GetSqlActions(), patient.UuId); Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk) from [ord_Visit] where Ptn_Pk in ({testIQPatientId}) AND VisitType=219"), Is.EqualTo(1)); Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk) from [DTL_FBCUSTOMFIELD_KNH_HTC_Form] where Ptn_Pk in ({testIQPatientId})"), Is.EqualTo(1)); Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk) from [dtl_fb_MARPsHTC] where Ptn_Pk in ({testIQPatientId})"), Is.EqualTo(2)); Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk) from [dtl_fb_DisabilityHTC] where Ptn_Pk in ({testIQPatientId})"), Is.EqualTo(3)); }
public void should_sync_new_patient_with_encounters() { testIQPatientId = -1; var patient = _testEncounters.First().Patient; Assert.NotNull(patient); Assert.That(patient, Is.Not.Null); Assert.That(patient.Encounters, Is.Not.Empty); _patientService.Sync(patient, false); var savedPatient = _patientService.GetAll().FirstOrDefault(x => x.Lastname == patient.Lastname); Assert.That(savedPatient, Is.Not.Null); Debug.Print(savedPatient.ToString()); Assert.That(savedPatient.Encounters, Is.Not.Empty); foreach (var e in savedPatient.Encounters) { Debug.Print($" >.{e.ToString()}"); foreach (var o in e.Observations) { Debug.Print($" >>.{o}"); } } Assert.False(string.IsNullOrWhiteSpace(_createEmrPatientHandler.GetNotification())); Debug.Print(_createEmrPatientHandler.GetNotification()); var iqpatient = _emrRepository.GetPatient(savedPatient.UuId); Assert.NotNull(iqpatient); testIQPatientId = iqpatient.Id; Debug.Print($"IQCare:{iqpatient.ToStringDetail()}"); Assert.That(_createEmrEncounterHandler.GetSqlActions(), Is.Not.Empty); Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk) from [ord_Visit] where Ptn_Pk in ({testIQPatientId}) AND VisitType=219"), Is.EqualTo(1)); Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk) from [DTL_FBCUSTOMFIELD_KNH_HTC_Form] where Ptn_Pk in ({testIQPatientId})"), Is.EqualTo(1)); Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk) from [dtl_fb_MARPsHTC] where Ptn_Pk in ({testIQPatientId})"), Is.EqualTo(2)); Assert.That(_emrRepository.ExecuteQuery($"select count(Ptn_Pk) from [dtl_fb_DisabilityHTC] where Ptn_Pk in ({testIQPatientId})"), Is.EqualTo(3)); Assert.That(_emrRepository.ExecuteQueryStringResult($"select remarks from [DTL_FBCUSTOMFIELD_KNH_HTC_Form] where Ptn_Pk in ({testIQPatientId})"), Is.StringContaining("No remark")); }