public void Constructor_ResponseCallbackIsCalled() { // Arrange var mockProvider = new MockProvider(); var fellowOakMockProvider = new FellowOakMockProvider(); var whereCollection = mockProvider.GetWhereCollection(); var infoBuilder = mockProvider.GetDicomInfoBuilderFake(); infoBuilder.BuildInfo<TestInfo>(Arg.Any<object>()).Returns(new TestInfo { PatientID = 666, PatientName = "patientName" }); var response = new DicomCFindResponse(new DicomDataset()) { Dataset = new DicomDataset() }; TestInfo responseItem = null; var responseAction = new Action<TestInfo>(item => { responseItem = item; }); // Act var dicomFindRequest = new FellowOakDicomFindRequest<TestInfo>(mockProvider.GetDicomMappingFake(), fellowOakMockProvider.GetDicomTagAdapterFake(), infoBuilder, mockProvider.GetGeneralizedInfoProviderFake(), fellowOakMockProvider.GetDicomSopClassUidProviderFake(), responseAction, whereCollection.GetDicomWhereCollections().First()); var innerRequest = (DicomCFindRequest)dicomFindRequest.InnerRequest; innerRequest.OnResponseReceived(null, response); // Assert Assert.That(responseItem.PatientID, Is.EqualTo(666)); Assert.That(responseItem.PatientName, Is.EqualTo("patientName")); }
public void Indexer_UndefinedDicomTag_ThrowsException() { // Arrange MockProvider mockProvider = new MockProvider(); var whereCollection = mockProvider.GetWhereCollection(); // Act + Assert Assert.That(() => whereCollection[DicomTags.Undefined], Throws.ArgumentException); }
public void Indexer_NotExistingDicomTag_ReturnsEmpty() { // Arrange MockProvider mockProvider = new MockProvider(); var whereCollection = mockProvider.GetWhereCollection(); // Act var result = whereCollection[DicomTags.PatientName]; // Assert Assert.That(result, Is.Empty); }
public void Indexer_ExistingDicomTag_Returns() { // Arrange MockProvider mockProvider = new MockProvider(); var whereCollection = mockProvider.GetWhereCollection(); whereCollection.WhereEquals(DicomTags.PatientName, "test"); whereCollection.WhereEquals(DicomTags.PatientName, "test2"); // Act var result = whereCollection[DicomTags.PatientName]; // Assert Assert.That(result.Count(), Is.EqualTo(2)); }
public void Constructor_CreatesInnerRequestWithWhereConditions() { // Arrange var mockProvider = new MockProvider(); var fellowOakMockProvider = new FellowOakMockProvider(); var whereCollection = mockProvider.GetWhereCollection(); whereCollection.WhereEquals(DicomTags.PatientID, "PatientIDValue"); whereCollection.WhereLike(DicomTags.PatientName, "PatientNameValue"); // Act var dicomFindRequest = new FellowOakDicomFindRequest<TestInfo>(mockProvider.GetDicomMappingFake(), fellowOakMockProvider.GetDicomTagAdapterFake(), mockProvider.GetDicomInfoBuilderFake(), mockProvider.GetGeneralizedInfoProviderFake(), fellowOakMockProvider.GetDicomSopClassUidProviderFake(), c => {}, whereCollection.GetDicomWhereCollections().First()); var innerRequestDataset = dicomFindRequest.InnerRequest.Dataset; // Assert Assert.That(innerRequestDataset.Get<string>(DicomTag.PatientID), Is.EqualTo("PatientIDValue")); Assert.That(innerRequestDataset.Get<string>(DicomTag.PatientName), Is.EqualTo("*PatientNameValue*")); }
public void LoadDataFromServer_GetResponse_StoresInCache() { // Arrange var mockProvider = new MockProvider(); var cacheProvider = mockProvider.GetCacheProviderFake(); var dataLoader = new DicomDataLoader<TestInfo>(cacheProvider, mockProvider.GetCacheIndexProviderFake(), mockProvider.GetDicomClientFactoryFake(), mockProvider.GetDicomRequestFactoryFake()); var whereCollection = mockProvider.GetWhereCollection(); whereCollection.WhereEquals(DicomTags.PatientID, 1); // Act var result = dataLoader.LoadDataFromServer(whereCollection); // Assert Assert.That(result.Count, Is.EqualTo(1)); Assert.That(result.All(c => c.PatientID == 1), Is.True); Assert.That(() => cacheProvider.Received(1).Store(Arg.Any<string>(), Arg.Any<object>(), Arg.Any<bool>()), Throws.Nothing); }
public void Predicate_AdvancedMatch_True() { // Arrange MockProvider mockProvider = new MockProvider(); var list = GetInfoList(); var whereCollection = mockProvider.GetWhereCollection(); whereCollection.WhereEquals(DicomTags.PatientID, 1); whereCollection.WhereEquals(DicomTags.PatientID, 2); whereCollection.WhereLike(DicomTags.PatientName, "test"); whereCollection.WhereEquals(DicomTags.PatientName, "testName2"); // Act var match = list.Where(whereCollection.Predicate).ToList(); // Assert Assert.That(match.Count, Is.EqualTo(2)); Assert.That(match.Any(c=>c.PatientName == "testName" && c.PatientID == 1), Is.True); Assert.That(match.Any(c=>c.PatientName == "testName2" && c.PatientID == 2), Is.True); }
public void WhereLike_AddsCorrectWhereItem() { // Arrange MockProvider mockProvider = new MockProvider(); var whereCollection = mockProvider.GetWhereCollection(); // Act whereCollection.WhereLike(DicomTags.PatientName, "test"); var result = whereCollection.Single(); // Assert Assert.That(result.Value, Is.EqualTo("test")); Assert.That(result.DicomTag, Is.EqualTo(DicomTags.PatientName)); Assert.That(result.Operator, Is.EqualTo(WhereOperator.Like)); }
public void WhereLike_NullValue_ThrowsException() { // Arrange MockProvider mockProvider = new MockProvider(); var whereCollection = mockProvider.GetWhereCollection(); // Act + Assert Assert.That(() => whereCollection.WhereLike(DicomTags.PatientID, null), Throws.TypeOf<ArgumentNullException>()); }
public void ContainsTag_DoesContain_ReturnTrue() { // Arrange MockProvider mockProvider = new MockProvider(); var whereCollection = mockProvider.GetWhereCollection(); whereCollection.WhereEquals(DicomTags.PatientName, "test"); // Act var result = whereCollection.ContainsTag(DicomTags.PatientName); // Assert Assert.That(result, Is.True); }
public void ContainsTag_DoesNotContain_ReturnFalse() { // Arrange MockProvider mockProvider = new MockProvider(); var whereCollection = mockProvider.GetWhereCollection(); // Act var result = whereCollection.ContainsTag(DicomTags.PatientName); // Assert Assert.That(result, Is.False); }
public void Predicate_SimpleEqualsMatch() { // Arrange MockProvider mockProvider = new MockProvider(); var list = GetInfoList(); var whereCollection = mockProvider.GetWhereCollection(); whereCollection.WhereEquals(DicomTags.PatientID, 1); // Act TestInfo match = list.Where(whereCollection.Predicate).Single(); Assert.That(match.PatientID, Is.EqualTo(1)); }
public void Predicate_SimpleLikeMatch_WithoutContainsMethod() { // Arrange MockProvider mockProvider = new MockProvider(); var list = GetInfoList(); var whereCollection = mockProvider.GetWhereCollection(); whereCollection.WhereLike(DicomTags.PatientID, 1); // Act var matches = list.Where(whereCollection.Predicate).ToList(); // Assert Assert.That(matches.Count, Is.EqualTo(1)); }
public void Predicate_MultipleEqualsMatch() { // Arrange MockProvider mockProvider = new MockProvider(); var list = GetInfoList(); list[1].PatientID = 1; var whereCollection = mockProvider.GetWhereCollection(); whereCollection.WhereEquals(DicomTags.PatientID, 1); // Act var matches = list.Where(whereCollection.Predicate).ToList(); // Assert Assert.That(matches.Count, Is.EqualTo(2)); Assert.That(matches.All(c => c.PatientID == 1), Is.True); }
public void Predicate_SameDicomTag_ReturnsBoth() { // Arrange MockProvider mockProvider = new MockProvider(); var list = GetInfoList(); var whereCollection = mockProvider.GetWhereCollection(); whereCollection.WhereEquals(DicomTags.PatientID, 1); whereCollection.WhereEquals(DicomTags.PatientID, 2); // Act var match = list.Where(whereCollection.Predicate); // Assert Assert.That(match.Count(), Is.EqualTo(2)); }
public void LoadDataFromServer_AllCombinationsAreAddedAsRequest() { // Arrange var mockProvider = new MockProvider(); var dicomClientFactory = mockProvider.GetDicomClientFactoryFake(); var dicomClient = mockProvider.GetDicomClientFake(); var dataLoader = new DicomDataLoader<TestInfo>(mockProvider.GetCacheProviderFake(), mockProvider.GetCacheIndexProviderFake(), dicomClientFactory, mockProvider.GetDicomRequestFactoryFake()); dicomClientFactory.CreateDicomClient().Returns(dicomClient); var whereCollection = mockProvider.GetWhereCollection(); whereCollection.WhereEquals(DicomTags.PatientID, 1); whereCollection.WhereEquals(DicomTags.PatientID, 2); whereCollection.WhereEquals(DicomTags.PatientName, "test"); whereCollection.WhereLike(DicomTags.PatientName, "test1"); // Act dataLoader.LoadDataFromServer(whereCollection); // Assert Assert.That(() => dicomClient.Received(4).AddFindRequest(Arg.Any<IDicomFindRequest<TestInfo>>()), Throws.Nothing); }
public void Predicate_EmptyMatch() { // Arrange MockProvider mockProvider = new MockProvider(); var list = GetInfoList(); var whereCollection = mockProvider.GetWhereCollection(); // Act var matches = list.Where(whereCollection.Predicate).ToList(); // Assert Assert.That(matches.Count, Is.EqualTo(3)); }
public void Predicate_AdvancedLikeMatch_True() { // Arrange MockProvider mockProvider = new MockProvider(); var list = GetInfoList(); var whereCollection = mockProvider.GetWhereCollection(); whereCollection.WhereLike(DicomTags.PatientID, 2); whereCollection.WhereLike(DicomTags.PatientName, "test"); // Act TestInfo match = list.Where(whereCollection.Predicate).Single(); // Assert Assert.That(match.PatientID, Is.EqualTo(2)); Assert.That(match.PatientName, Is.EqualTo("testName2")); }
public void Predicate_AdvancedLikeMatch_False() { // Arrange MockProvider mockProvider = new MockProvider(); var list = GetInfoList(); var whereCollection = mockProvider.GetWhereCollection(); whereCollection.WhereLike(DicomTags.PatientID, 2); whereCollection.WhereLike(DicomTags.PatientName, "testtt"); // Act var matches = list.Where(whereCollection.Predicate).ToList(); // Assert Assert.That(matches.Count, Is.EqualTo(0)); }
public void GetDicomWhereCollections_ExistingConstraints_ReturnsCorrectConditions() { // Arrange MockProvider mockProvider = new MockProvider(); var whereCollection = mockProvider.GetWhereCollection(); whereCollection.WhereLike(DicomTags.PatientName, "test"); whereCollection.WhereEquals(DicomTags.PatientID, 1); // Act var result = whereCollection.GetDicomWhereCollections().Single(); // Assert Assert.That(result.Any(c=>c.DicomTag == DicomTags.PatientID && c.Value == "1"), Is.True); Assert.That(result.Any(c=>c.DicomTag == DicomTags.PatientName && c.Value == "*test*"), Is.True); }
public void GetDicomWhereCollections_ExistingConstraints_ReturnsAllCombinations() { // Arrange MockProvider mockProvider = new MockProvider(); var whereCollection = mockProvider.GetWhereCollection(); whereCollection.WhereEquals(DicomTags.PatientName, "test1"); whereCollection.WhereEquals(DicomTags.PatientName, "test2"); whereCollection.WhereLike(DicomTags.PatientName, "test3"); whereCollection.WhereEquals(DicomTags.PatientID, 1); whereCollection.WhereEquals(DicomTags.PatientID, 2); whereCollection.WhereLike(DicomTags.PatientID, 3); whereCollection.WhereEquals(DicomTags.Modality, "test1"); whereCollection.WhereEquals(DicomTags.Modality, "test2"); whereCollection.WhereLike(DicomTags.Modality, "test3"); // Act var result = whereCollection.GetDicomWhereCollections(); // Assert Assert.That(result.Count(), Is.EqualTo(27)); }
public void GetDicomWhereCollections_NoConstraints_ReturnsEmptyCollection() { // Arrange MockProvider mockProvider = new MockProvider(); var whereCollection = mockProvider.GetWhereCollection(); // Act var result = whereCollection.GetDicomWhereCollections(); // Assert Assert.That(result.First(), Is.Empty); }