public void TestIdealMultiModalityQuery() { var server = new TestDicomServiceNode(); server.Studies.AddRange(CreateTestStudies()); server.StudyMatcher = IdealMatchModalitiesInStudy; var expectedStudies = new[] { "11", "12", "13", "14", "15", "21", "22", "23", "24", "25", "51", "52", "53", "54", "55" }; var actualStudies = StudyBrowserComponent.TestGetStudyEntries(server, new StudyRootStudyIdentifier { ModalitiesInStudy = new[] { "PT", "CT" } }).Select(s => s.Study.StudyInstanceUid).ToList(); AssertCollections(expectedStudies, actualStudies, "ModalitiesInStudy=['PT','CT']"); Assert.AreEqual(2, server.ResetQueryCount(), "Too many server query calls"); actualStudies = StudyBrowserComponent.TestGetStudyEntries(server, new StudyRootStudyIdentifier { ModalitiesInStudy = new[] { "CT", "PT" } }).Select(s => s.Study.StudyInstanceUid).ToList(); AssertCollections(expectedStudies, actualStudies, "ModalitiesInStudy=['CT','PT']"); Assert.AreEqual(2, server.ResetQueryCount(), "Too many server query calls"); expectedStudies = new[] { "04", "05", "06", "07", "11", "12", "13", "14", "15", "21", "22", "23", "24", "25", "34", "35", "44", "45", "51", "52", "53", "54", "55" }; actualStudies = StudyBrowserComponent.TestGetStudyEntries(server, new StudyRootStudyIdentifier { ModalitiesInStudy = new[] { "PT", "CT", "KO", "PR" } }).Select(s => s.Study.StudyInstanceUid).ToList(); AssertCollections(expectedStudies, actualStudies, "ModalitiesInStudy=['PT','CT','KO','PR']"); Assert.AreEqual(4, server.ResetQueryCount(), "Too many server query calls"); }
public void TestIdealSingleModalityQuery2() { var server = new TestDicomServiceNode(); server.Studies.AddRange(CreateTestStudies()); server.StudyMatcher = IdealMatchModalitiesInStudy; var expectedStudies = new string[0]; var actualStudies = StudyBrowserComponent.TestGetStudyEntries(server, new StudyRootStudyIdentifier { ModalitiesInStudy = new[] { "ZZ" } }).Select(s => s.Study.StudyInstanceUid).ToList(); AssertCollections(expectedStudies, actualStudies, "ModalitiesInStudy=['ZZ']"); Assert.AreEqual(1, server.ResetQueryCount(), "Too many server query calls"); actualStudies = StudyBrowserComponent.TestGetStudyEntries(server, new StudyRootStudyIdentifier { ModalitiesInStudy = new[] { "ZZ", "ZZ" } }).Select(s => s.Study.StudyInstanceUid).ToList(); AssertCollections(expectedStudies, actualStudies, "ModalitiesInStudy=['ZZ','ZZ']"); Assert.AreEqual(1, server.ResetQueryCount(), "Too many server query calls"); }