public void SetUp() { var container = new WindsorContainer().Install(new CommonInstaller()); mSeriesInfoProvider = container.Resolve<ISeriesInfoProvider>(); var studyInfoProvider = container.Resolve<IStudyInfoProvider>(); mStudy = studyInfoProvider.GetStudyByIDAsync("1.2.276.0.7230010.3.1.2.655267989.4252.1447498448.838").Result; }
public async void DownloadImages_ProperMethodsAreCalled() { // Arrange MockProvider mockProvider = new MockProvider(); var downloader = mockProvider.GetDicomDownloaderForStudiesFake(); StudyInfoProvider studyInfoProvider = new StudyInfoProvider(mockProvider.GetDicomQueryProviderForStudiesFake(), downloader); InfoIdentifier studyIdentifier = new InfoIdentifier("1.2.3"); StudyInfo studyInfo = new StudyInfo { StudyInstanceUID = studyIdentifier }; // Act await studyInfoProvider.DownloadImagesAsync(studyInfo); // Assert Assert.That(() => downloader.Received(1).DownloadAsync(studyIdentifier, Arg.Any<Func<InfoIdentifier, InfoIdentifier, Stream>>()), Throws.Nothing); }
/// <summary> /// Performs downloading of images related to the given study. /// </summary> /// <param name="study">Study the images are downloaded for</param> /// <param name="downloadAction">Specifies action which will be performed once server gets the file</param> /// <exception cref="ArgumentNullException"><paramref name="study"/> is null</exception> public async Task DownloadImagesAsync(StudyInfo study, Func<InfoIdentifier, InfoIdentifier, Stream> downloadAction = null) { if (study == null) { throw new ArgumentNullException(nameof(study)); } await mDicomDownloader.DownloadAsync(study.StudyInstanceUID, downloadAction); }
public void GetSeriesForStudy_PropertQueryIsCreated() { // Arrange var mockProvider = new MockProvider(); var queryProvider = Substitute.For<IDicomQueryProvider<SeriesInfo>>(); var dataLoader = Substitute.For<IDicomDataLoader<SeriesInfo>>(); var whereCollection = Substitute.For<IWhereCollection<SeriesInfo>>(); var query = Substitute.For<DicomQuery<SeriesInfo>>(mockProvider.GetGeneralizedInfoProviderFake(), dataLoader, whereCollection); queryProvider.GetDicomQuery().Returns(query); var study = new StudyInfo { StudyInstanceUID = new InfoIdentifier("1.2.3") }; var seriesInfoProvider = new SeriesInfoProvider(queryProvider); // Act seriesInfoProvider.GetSeriesForStudy(study); // Assert Assert.That(() => whereCollection.Received(1).WhereEquals(DicomTags.StudyInstanceUID, "1.2.3"), Throws.Nothing); }
/// <summary> /// Compares with another <see cref="StudyInfo"/> info and returns whether their UID equals. /// </summary> /// <param name="other">Other patient info to be checked</param> /// <returns>True, if patient IDs are equals; otherwise, false</returns> protected bool Equals(StudyInfo other) { return Equals(StudyInstanceUID, other.StudyInstanceUID); }