public void HandleTypeAsync_InvalidType_ThrowsException() { // Arrange var mockProvider = new MockProvider(); var studyTypeHandler = new StudyTypeHandler(mockProvider.GetStudyInfoProviderFake(), mockProvider.GetPatientInfoProviderFake()); var inputArguments = new InputArguments(mockProvider.GetSettingsProviderFake(), mockProvider.GetBirthNumberParserFake()) { Type = "UnknownType" }; // Act var exception = studyTypeHandler.HandleTypeAsync(inputArguments, GetMemoryTextWriter()).Exception; // Assert Assert.That(exception.InnerExceptions.First(), Is.TypeOf<ArgumentException>()); }
public async void HandleTypeAsync_SingleStudy([Values(true, false)] bool useCache) { // Arrange var mockProvider = new MockProvider(); var studyInfoProvider = mockProvider.GetStudyInfoProviderFake(); var studyTypeHandler = new StudyTypeHandler(studyInfoProvider, mockProvider.GetPatientInfoProviderFake()); var inputArguments = new InputArguments(mockProvider.GetSettingsProviderFake(), mockProvider.GetBirthNumberParserFake()) { Type = "study", Identifier = "123", UseCache = useCache }; // Act await studyTypeHandler.HandleTypeAsync(inputArguments, GetMemoryTextWriter()); // Assert Assert.That(() => studyInfoProvider.Received(1).GetStudyByIDAsync(new InfoIdentifier("123"), useCache), Throws.Nothing); }
public async void HandleTypeAsync_AllStudies([Values(true, false)] bool useCache) { // Arrange var mockProvider = new MockProvider(); var studyInfoProvider = mockProvider.GetStudyInfoProviderFake(); var query = Substitute.For<IDicomQuery<StudyInfo>>(); studyInfoProvider.GetStudies().Returns(query); var studyTypeHandler = new StudyTypeHandler(studyInfoProvider, mockProvider.GetPatientInfoProviderFake()); var inputArguments = new InputArguments(mockProvider.GetSettingsProviderFake(), mockProvider.GetBirthNumberParserFake()) { Type = "study", UseCache = useCache }; // Act await studyTypeHandler.HandleTypeAsync(inputArguments, GetMemoryTextWriter()); // Assert if (useCache) { Assert.That(() => query.Received(1).LoadFromCache(), Throws.Nothing); } Assert.That(() => studyInfoProvider.Received(1).GetStudies(), Throws.Nothing); }
public async void HandleTypeAsync_SingleStudy_Download() { // Arrange var mockProvider = new MockProvider(); var studyInfoProvider = mockProvider.GetStudyInfoProviderFake(); var studyTypeHandler = new StudyTypeHandler(studyInfoProvider, mockProvider.GetPatientInfoProviderFake()); var inputArguments = new InputArguments(mockProvider.GetSettingsProviderFake(), mockProvider.GetBirthNumberParserFake()) { Type = "study", Identifier = "123", Download = true }; // Act await studyTypeHandler.HandleTypeAsync(inputArguments, GetMemoryTextWriter()); // Assert Assert.That(() => studyInfoProvider.Received(1).GetStudyByIDAsync(new InfoIdentifier("123")), Throws.Nothing); Assert.That(() => studyInfoProvider.Received(1).DownloadImagesAsync(Arg.Any<StudyInfo>()), Throws.Nothing); }