public void GetPatientByBirthNumberAsync_InvalidBirthNumber_ThrowsException() { // Arrange var mockProvider = new MockProvider(); var patientInfoProvider = new PatientInfoProvider(mockProvider.GetDicomQueryProviderForPatientsFake(), mockProvider.GetStudyInfoProviderFake(), new BirthNumberParser()); // Act var exception = patientInfoProvider.GetPatientByBirthNumberAsync("910725/6443").Exception; // Act + Assert Assert.That(exception.InnerExceptions.First(), Is.TypeOf<ArgumentException>()); }
public async void GetPatientByBirthNumber_FromServer_ProperQueryIsCreated([Values("910725/6444", "9107256444")] string birthNumber) { // Arrange var mockProvider = new MockProvider(); var queryProvider = Substitute.For<IDicomQueryProvider<PatientInfo>>(); var dataLoader = Substitute.For<IDicomDataLoader<PatientInfo>>(); var whereCollection = Substitute.For<IWhereCollection<PatientInfo>>(); var query = Substitute.For<DicomQuery<PatientInfo>>(mockProvider.GetGeneralizedInfoProviderFake(), dataLoader, whereCollection); queryProvider.GetDicomQuery().Returns(query); var patientInfoProvider = new PatientInfoProvider(queryProvider, mockProvider.GetStudyInfoProviderFake(), mockProvider.GetBirthNumberParserFake()); // Act await patientInfoProvider.GetPatientByBirthNumberAsync(birthNumber); // Assert Assert.That(() => whereCollection.Received(1).WhereEquals(DicomTags.PatientID, "910725/6444"), Throws.Nothing); Assert.That(() => whereCollection.Received(1).WhereEquals(DicomTags.PatientID, "9107256444"), Throws.Nothing); }