public async Task MigrationTreatmentEventWithCustomNoteMappedToWithoutBoilerplateParts() { // Arrange GivenLegacyUserWithName("*****@*****.**", "Miles", "Davis"); var migrationTransferEvent = new MigrationDbTransferEvent { EventDate = DateTime.Parse("12/12/2012"), CaseManager = "*****@*****.**", HospitalId = new Guid("B8AA918D-233F-4C41-B9AE-BE8A8DC8BE7B"), TreatmentEventType = "TransferIn", Notes = "Dear Mrs Lucy Carmen-Minoe, \n You have been identified as the new case manager for the case below. This patient was moved from XYX hospital in London. This is very important information.\n" + "Id: 134222 \n\n Patient: Harry Swingset Case report date: 11/11/2009 \n Also they are allergic to mung beans" }; // Act var mappedEvent = await _treatmentEventMapper.AsTransferEvent(migrationTransferEvent, null, 1); // Assert Assert.Equal(DateTime.Parse("12/12/2012"), mappedEvent.EventDate); Assert.Equal(TreatmentEventType.TransferIn, mappedEvent.TreatmentEventType); Assert.Contains("This patient was moved from XYX hospital in London. This is very important information.", mappedEvent.Note); Assert.Contains("Also they are allergic to mung beans", mappedEvent.Note); Assert.DoesNotContain("Id: 134222", mappedEvent.Note); Assert.DoesNotContain("Dear Mrs Lucy Carmen-Minoe", mappedEvent.Note); Assert.DoesNotContain("You have been identified as the new case manager for the case below.", mappedEvent.Note); }
private async Task <TreatmentEvent> AsTransferEvent(MigrationDbTransferEvent rawEvent) { var ev = new TreatmentEvent(); ev.EventDate = rawEvent.EventDate; ev.TreatmentEventType = Converter.GetEnumValue <TreatmentEventType>(rawEvent.TreatmentEventType); ev.CaseManagerUsername = rawEvent.CaseManager; // ReSharper disable once InvertIf if (rawEvent.HospitalId is Guid guid) { var tbService = (await _referenceDataRepository.GetTbServiceFromHospitalIdAsync(guid)); if (tbService == null) { Log.Warning( $"No TB service exists for hospital with guid {guid} - treatment event recorded without a service"); } else { ev.TbServiceCode = tbService.Code; } } return(ev); }
public async Task <TreatmentEvent> AsTransferEvent(MigrationDbTransferEvent rawEvent, PerformContext context, int runId) { var ev = new TreatmentEvent { EventDate = rawEvent.EventDate, TreatmentEventType = Converter.GetEnumValue <TreatmentEventType>(rawEvent.TreatmentEventType), Note = RemoveUnnecessaryNoteInfo(rawEvent.Notes) }; await TryAddTbServiceAndCaseManagerToTreatmentEvent(ev, rawEvent.HospitalId, rawEvent.CaseManager, context, runId); return(ev); }
public async Task MigrationTreatmentEventWithBoilerplateNoteMappedToNull() { // Arrange GivenLegacyUserWithName("*****@*****.**", "Miles", "Davis"); var migrationTransferEvent = new MigrationDbTransferEvent { EventDate = DateTime.Parse("12/12/2012"), CaseManager = "*****@*****.**", HospitalId = new Guid("B8AA918D-233F-4C41-B9AE-BE8A8DC8BE7B"), TreatmentEventType = "TransferIn", Notes = "Dear Mrs Lucy Carmen-Minoe, \n You have been identified as the new case manager for the case below.\n" + "Id: 134222 \n\n Patient: Harry Swingset Case report date: 11/11/2009" }; // Act var mappedEvent = await _treatmentEventMapper.AsTransferEvent(migrationTransferEvent, null, 1); // Assert Assert.Equal(DateTime.Parse("12/12/2012"), mappedEvent.EventDate); Assert.Equal(TreatmentEventType.TransferIn, mappedEvent.TreatmentEventType); Assert.Null(mappedEvent.Note); }
public async Task MigrationTreatmentEventMappedCorrectlyWithTbServiceAndCaseManagerAdded() { // Arrange GivenLegacyUserWithName("*****@*****.**", "Miles", "Davis"); GivenHospitalIdHasTbServiceCode(new Guid("B8AA918D-233F-4C41-B9AE-BE8A8DC8BE7B"), "TBS00JAZZ"); var migrationTransferEvent = new MigrationDbTransferEvent { EventDate = DateTime.Parse("12/12/2012"), CaseManager = "*****@*****.**", HospitalId = new Guid("B8AA918D-233F-4C41-B9AE-BE8A8DC8BE7B"), TreatmentEventType = "TransferIn" }; // Act var mappedEvent = await _treatmentEventMapper.AsTransferEvent(migrationTransferEvent, null, 1); // Assert Assert.Equal(DateTime.Parse("12/12/2012"), mappedEvent.EventDate); Assert.Equal(TreatmentEventType.TransferIn, mappedEvent.TreatmentEventType); Assert.Equal("TBS00JAZZ", mappedEvent.TbServiceCode); Assert.NotNull(_context.User.SingleOrDefault(u => u.Username == "*****@*****.**")); Assert.Equal(_context.User.Single().Id, mappedEvent.CaseManagerId); }