public void TestBasicString_SimpleCriteria() { var testObjects = new[] { new TestObject <string> { TheProperty = "test" } }; var criteria = new DicomAttributeCollection(); criteria[DicomTags.PatientId].SetStringValue("test"); var result = new DicomAttributeCollection(); var filter = new TestStringPropertyFilter(DicomTags.PatientId, criteria); var iFilter = (IMultiValuedPropertyFilter <TestObject <string> >)filter; iFilter.AddToQuery(null); iFilter.FilterResults(testObjects); iFilter.SetAttributeValue(testObjects[0], result); Assert.IsFalse(filter.IsCriterionEmpty); Assert.IsFalse(filter.IsCriterionNull); Assert.IsTrue(filter.ShouldAddToQuery); Assert.IsTrue(filter.ShouldAddToResult); Assert.IsTrue(iFilter.IsWildcardCriterionAllowed); //Assert.IsFalse(filter.IsWildcardCriterion(filter.CriterionValue)); Assert.IsTrue(filter.CalledAddEqualsToQuery); Assert.IsFalse(filter.CalledAddLikeToQuery); //Only if enabled. Assert.IsFalse(filter.CalledFilterResults); Assert.IsTrue(filter.CalledAddToResults); //Should populate the result because it was in the request. Assert.AreEqual(testObjects[0].TheProperty, result[DicomTags.PatientId].GetString(0, "")); }
public void TestBasicString_NoCriteria() { var testObjects = new[] { new TestObject <string> { TheProperty = "test" } }; var criteria = new DicomAttributeCollection(); var result = new DicomAttributeCollection(); var filter = new TestStringPropertyFilter(DicomTags.PatientId, criteria); var iFilter = (IMultiValuedPropertyFilter <TestObject <string> >)filter; iFilter.AddToQuery(null); iFilter.FilterResults(testObjects); iFilter.SetAttributeValue(testObjects[0], result); Assert.IsTrue(filter.IsCriterionEmpty); Assert.IsFalse(filter.IsCriterionNull); Assert.IsFalse(filter.ShouldAddToQuery); Assert.IsFalse(filter.ShouldAddToResult); Assert.IsTrue(iFilter.IsWildcardCriterionAllowed); Assert.IsFalse(filter.CalledAddEqualsToQuery); Assert.IsFalse(filter.CalledAddLikeToQuery); Assert.IsFalse(filter.CalledFilterResults); Assert.IsFalse(filter.CalledAddToResults); }