added test for IS_SET and IS_NOT_SET
diff --git a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/BoolFilterTest.java b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/BoolFilterTest.java
index 1787557..5c18dec 100644
--- a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/BoolFilterTest.java
+++ b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/BoolFilterTest.java
@@ -56,6 +56,33 @@
}
+ @Test
+ public void testIsSet() throws Exception {
+ BoolFilter filter;
+ filter = new BoolFilter(Operator.IS_SET, true, attributeDefinition);
+ doMatch(filter, true);
+
+ AttributeDefinitionBoolean nonExistingAttributeDefinition = ReqIF10Factory.eINSTANCE.createAttributeDefinitionBoolean();
+ nonExistingAttributeDefinition.setIdentifier("AD_ID0");
+
+ filter = new BoolFilter(Operator.IS, false, nonExistingAttributeDefinition);
+ doMatch(filter, false);
+ }
+
+
+ @Test
+ public void testIsNotSet() throws Exception {
+ BoolFilter filter;
+ filter = new BoolFilter(Operator.IS_NOT_SET, true, attributeDefinition);
+ doMatch(filter, false);
+
+ AttributeDefinitionBoolean nonExistingAttributeDefinition = ReqIF10Factory.eINSTANCE.createAttributeDefinitionBoolean();
+ nonExistingAttributeDefinition.setIdentifier("AD_ID1");
+
+ filter = new BoolFilter(Operator.IS_NOT_SET, false, nonExistingAttributeDefinition);
+ doMatch(filter, true);
+ }
+
/*
* A match on a specObject that does not contain this attribute should always return false
diff --git a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/DateFilterTest.java b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/DateFilterTest.java
index f899f92..523ea6a 100644
--- a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/DateFilterTest.java
+++ b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/DateFilterTest.java
@@ -123,10 +123,17 @@
filter = new DateFilter(IFilter.Operator.BETWEEN, new GregorianCalendar(2014, 12, 01), new GregorianCalendar(2014, 12, 04), attributeDefinition);
doMatch(filter, true);
+ filter = new DateFilter(IFilter.Operator.BETWEEN, new GregorianCalendar(2014, 12, 04), new GregorianCalendar(2014, 12, 01), attributeDefinition);
+ doMatch(filter, true);
filter = new DateFilter(IFilter.Operator.BETWEEN, new GregorianCalendar(2014, 12, 03), new GregorianCalendar(2014, 12, 03), attributeDefinition);
doMatch(filter, true);
+ filter = new DateFilter(IFilter.Operator.BETWEEN, new GregorianCalendar(2014, 12, 01), new GregorianCalendar(2014, 12, 03), attributeDefinition);
+ doMatch(filter, true);
+ filter = new DateFilter(IFilter.Operator.BETWEEN, new GregorianCalendar(2014, 12, 03), new GregorianCalendar(2014, 12, 06), attributeDefinition);
+ doMatch(filter, true);
+
filter = new DateFilter(IFilter.Operator.BETWEEN, new GregorianCalendar(2014, 01, 01), new GregorianCalendar(2014, 12, 01), attributeDefinition);
doMatch(filter, false);
}
@@ -244,6 +251,22 @@
@Test
+ public void testIsNotSet() throws Exception {
+ DateFilter filter;
+
+ filter = new DateFilter(IFilter.Operator.IS_NOT_SET, new GregorianCalendar(2014, 1, 1), null, attributeDefinition);
+ doMatch(filter, false);
+
+ AttributeDefinitionDate attributeDefinition2 = ReqIF10Factory.eINSTANCE.createAttributeDefinitionDate();
+ attributeDefinition2.setIdentifier("AD_ID1");
+
+ filter = new DateFilter(IFilter.Operator.IS_NOT_SET, new GregorianCalendar(2014, 1, 1), null, attributeDefinition2);
+ doMatch(filter, true);
+ }
+
+
+
+ @Test
public void testIsSetInternal() throws Exception {
DateFilter filter;
diff --git a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/EnumFilterTest.java b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/EnumFilterTest.java
index cbb6a2f..0a48912 100644
--- a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/EnumFilterTest.java
+++ b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/EnumFilterTest.java
@@ -150,6 +150,37 @@
doMatch(filter, false);
}
+
+
+ @Test
+ public void testIsSet() throws Exception {
+ EnumFilter filter;
+
+ filter = new EnumFilter(IFilter.Operator.IS_SET, specifiedValues, attributeDefinition);
+ doMatch(filter, true);
+
+ AttributeDefinitionEnumeration attributeDefinition2 = ReqIF10Factory.eINSTANCE.createAttributeDefinitionEnumeration();
+ attributeDefinition2.setIdentifier("AD_ID1");
+
+ filter = new EnumFilter(IFilter.Operator.IS_SET, specifiedValues, attributeDefinition2);
+ doMatch(filter, false);
+ }
+
+
+ @Test
+ public void testIsNotSet() throws Exception {
+ EnumFilter filter;
+
+ filter = new EnumFilter(IFilter.Operator.IS_NOT_SET, specifiedValues, attributeDefinition);
+ doMatch(filter, false);
+
+ AttributeDefinitionEnumeration attributeDefinition2 = ReqIF10Factory.eINSTANCE.createAttributeDefinitionEnumeration();
+ attributeDefinition2.setIdentifier("AD_ID1");
+
+ filter = new EnumFilter(IFilter.Operator.IS_NOT_SET, specifiedValues, attributeDefinition2);
+ doMatch(filter, true);
+ }
+
@Override
public void doEmptyTest() throws Exception {
diff --git a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/IntegerFilterTest.java b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/IntegerFilterTest.java
index f424f72..259bcdd 100644
--- a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/IntegerFilterTest.java
+++ b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/IntegerFilterTest.java
@@ -115,6 +115,35 @@
}
+ @Test
+ public void testIsSet() throws Exception {
+ NumberFilter filter;
+
+ filter = new NumberFilter(Operator.IS_SET, new BigInteger("2"), null, attributeDefinition);
+ doMatch(filter, true);
+
+ AttributeDefinitionInteger attributeDefinition2 = ReqIF10Factory.eINSTANCE.createAttributeDefinitionInteger();
+ attributeDefinition2.setIdentifier("AD_ID1");
+
+ filter = new NumberFilter(Operator.IS_SET, new BigInteger("2"), null, attributeDefinition2);
+ doMatch(filter, false);
+ }
+
+
+ @Test
+ public void testIsNotSet() throws Exception {
+ NumberFilter filter;
+
+ filter = new NumberFilter(Operator.IS_NOT_SET, new BigInteger("2"), null, attributeDefinition);
+ doMatch(filter, false);
+
+ AttributeDefinitionInteger attributeDefinition2 = ReqIF10Factory.eINSTANCE.createAttributeDefinitionInteger();
+ attributeDefinition2.setIdentifier("AD_ID1");
+
+ filter = new NumberFilter(Operator.IS_NOT_SET, new BigInteger("2"), null, attributeDefinition2);
+ doMatch(filter, true);
+ }
+
@Override
public IFilter createFilterInstance(Operator operator) {
diff --git a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/RealFilterTest.java b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/RealFilterTest.java
index e55db36..a5a2e94 100644
--- a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/RealFilterTest.java
+++ b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/RealFilterTest.java
@@ -12,6 +12,7 @@
import java.util.Set;
+import org.eclipse.rmf.reqif10.AttributeDefinitionInteger;
import org.eclipse.rmf.reqif10.AttributeDefinitionReal;
import org.eclipse.rmf.reqif10.AttributeValueReal;
import org.eclipse.rmf.reqif10.DatatypeDefinitionReal;
@@ -114,6 +115,36 @@
}
+ @Test
+ public void testIsSet() throws Exception {
+ NumberFilter filter;
+
+ filter = new NumberFilter(Operator.IS_SET, new Double("2"), null, attributeDefinition);
+ doMatch(filter, true);
+
+ AttributeDefinitionReal attributeDefinition2 = ReqIF10Factory.eINSTANCE.createAttributeDefinitionReal();
+ attributeDefinition2.setIdentifier("AD_ID1");
+
+ filter = new NumberFilter(Operator.IS_SET, new Double("2"), null, attributeDefinition2);
+ doMatch(filter, false);
+ }
+
+
+ @Test
+ public void testIsNotSet() throws Exception {
+ NumberFilter filter;
+
+ filter = new NumberFilter(Operator.IS_NOT_SET, new Double("2"), null, attributeDefinition);
+ doMatch(filter, false);
+
+ AttributeDefinitionInteger attributeDefinition2 = ReqIF10Factory.eINSTANCE.createAttributeDefinitionInteger();
+ attributeDefinition2.setIdentifier("AD_ID1");
+
+ filter = new NumberFilter(Operator.IS_NOT_SET, new Double("2"), null, attributeDefinition2);
+ doMatch(filter, true);
+ }
+
+
@Override
public IFilter createFilterInstance(Operator operator) {
diff --git a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/StringFilterTest.java b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/StringFilterTest.java
index 6493fba..c8a3e14 100644
--- a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/StringFilterTest.java
+++ b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/StringFilterTest.java
@@ -230,16 +230,31 @@
@Test
public void testIsSet() throws Exception {
- AttributeDefinitionString attributeDefinition2 = ReqIF10Factory.eINSTANCE.createAttributeDefinitionString();
- attributeDefinition2.setIdentifier("AD_ID1");
+ StringFilter filter;
- StringFilter filter = new StringFilter(IFilter.Operator.IS_SET, "", attributeDefinition2, false);
- doMatch(filter, false);
-
filter = new StringFilter(IFilter.Operator.IS_SET, "", attributeDefinition, false);
doMatch(filter, true);
- fail("write more tests here");
+ AttributeDefinitionString attributeDefinition2 = ReqIF10Factory.eINSTANCE.createAttributeDefinitionString();
+ attributeDefinition2.setIdentifier("AD_ID1");
+
+ filter = new StringFilter(IFilter.Operator.IS_SET, "", attributeDefinition2, false);
+ doMatch(filter, false);
+ }
+
+
+ @Test
+ public void testIsNotSet() throws Exception {
+ StringFilter filter;
+
+ filter = new StringFilter(IFilter.Operator.IS_NOT_SET, "", attributeDefinition, false);
+ doMatch(filter, false);
+
+ AttributeDefinitionString attributeDefinition2 = ReqIF10Factory.eINSTANCE.createAttributeDefinitionString();
+ attributeDefinition2.setIdentifier("AD_ID1");
+
+ filter = new StringFilter(IFilter.Operator.IS_NOT_SET, "", attributeDefinition2, false);
+ doMatch(filter, true);
}
diff --git a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/XhtmlFilterTest.java b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/XhtmlFilterTest.java
index 85fcd0c..c76177e 100644
--- a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/XhtmlFilterTest.java
+++ b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/XhtmlFilterTest.java
@@ -22,6 +22,7 @@
import org.eclipse.rmf.reqif10.AttributeDefinitionXHTML;
import org.eclipse.rmf.reqif10.AttributeValueXHTML;
import org.eclipse.rmf.reqif10.ReqIF;
+import org.eclipse.rmf.reqif10.ReqIF10Factory;
import org.eclipse.rmf.reqif10.SpecObject;
import org.eclipse.rmf.reqif10.common.util.ReqIF10Util;
import org.eclipse.rmf.reqif10.search.filter.IFilter;
@@ -105,9 +106,33 @@
doMatch(xhtmlFilter, true);
}
+ @Test
+ public void testIsSet() throws Exception {
+ XhtmlFilter xhtmlFilter;
+
+ xhtmlFilter = new XhtmlFilter(IFilter.Operator.IS_SET, "hello", attributeDefinition, true);
+ doMatch(xhtmlFilter, true);
+
+ AttributeDefinitionXHTML attributeDefinition2 = ReqIF10Factory.eINSTANCE.createAttributeDefinitionXHTML();
+ attributeDefinition2.setIdentifier("AD_ID1");
+
+ xhtmlFilter = new XhtmlFilter(IFilter.Operator.IS_SET, "hello", attributeDefinition2, true);
+ doMatch(xhtmlFilter, false);
+ }
-
-
+ @Test
+ public void testIsNotSet() throws Exception {
+ XhtmlFilter xhtmlFilter;
+
+ xhtmlFilter = new XhtmlFilter(IFilter.Operator.IS_NOT_SET, "hello", attributeDefinition, true);
+ doMatch(xhtmlFilter, false);
+
+ AttributeDefinitionXHTML attributeDefinition2 = ReqIF10Factory.eINSTANCE.createAttributeDefinitionXHTML();
+ attributeDefinition2.setIdentifier("AD_ID1");
+
+ xhtmlFilter = new XhtmlFilter(IFilter.Operator.IS_NOT_SET, "hello", attributeDefinition2, true);
+ doMatch(xhtmlFilter, true);
+ }
@Test