more UnitTests
diff --git a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/DateFilterDefaultsTest.java b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/DateFilterDefaultsTest.java
index 018ceae..f168f4b 100644
--- a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/DateFilterDefaultsTest.java
+++ b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/DateFilterDefaultsTest.java
@@ -47,7 +47,7 @@
 		
 		SpecObject specObject = ReqIF10Factory.eINSTANCE.createSpecObject();
 		//specObject.getValues().add(attributeValue);
-		specObject.setLastChange(new GregorianCalendar(2014, 11, 03));
+		specObject.setLastChange(new GregorianCalendar(2014, 11, 03, 12, 0, 0));
 		
 		createSpecObjectType(specObject, attributeDefinition);
 		
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 6afc3f9..0e54fdb 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
@@ -226,6 +226,12 @@
 		filter = new DateFilter(IFilter.Operator.AFTER, new GregorianCalendar(3000, 1, 1), null, DateFilter.InternalAttribute.LAST_CHANGE);
 		doMatch(filter, false);
 		
+		filter = new DateFilter(IFilter.Operator.AFTER, new GregorianCalendar(2014, 11, 02), null, DateFilter.InternalAttribute.LAST_CHANGE);
+		doMatch(filter, true);
+		
+		filter = new DateFilter(IFilter.Operator.AFTER, new GregorianCalendar(2014, 11, 03, 0, 0, 0), null, DateFilter.InternalAttribute.LAST_CHANGE);
+		doMatch(filter, true);
+		
 		filter = new DateFilter(IFilter.Operator.AFTER, new GregorianCalendar(2014, 11, 03), null, DateFilter.InternalAttribute.LAST_CHANGE);
 		doMatch(filter, true);
 		
diff --git a/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/StringFilterInternalTest.java b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/StringFilterInternalTest.java
new file mode 100644
index 0000000..e53265c
--- /dev/null
+++ b/org.eclipse.rmf.reqif10.search.test/src/org/eclipse/rmf/reqif10/search/test/StringFilterInternalTest.java
@@ -0,0 +1,151 @@
+package org.eclipse.rmf.reqif10.search.test;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.GregorianCalendar;
+import java.util.HashMap;
+import java.util.Set;
+
+import org.eclipse.rmf.reqif10.AttributeDefinitionString;
+import org.eclipse.rmf.reqif10.AttributeValueString;
+import org.eclipse.rmf.reqif10.DatatypeDefinitionString;
+import org.eclipse.rmf.reqif10.ReqIF10Factory;
+import org.eclipse.rmf.reqif10.SpecObject;
+import org.eclipse.rmf.reqif10.search.filter.AbstractTextFilter;
+import org.eclipse.rmf.reqif10.search.filter.AbstractTextFilter.InternalAttribute;
+import org.eclipse.rmf.reqif10.search.filter.IFilter;
+import org.eclipse.rmf.reqif10.search.filter.IFilter.Operator;
+import org.eclipse.rmf.reqif10.search.filter.StringFilter;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+import org.junit.runners.Parameterized.Parameters;
+
+
+@RunWith(Parameterized.class)
+public class StringFilterInternalTest extends AbstractFilterTest {
+
+	@Parameters
+	public static Collection<Object[]> data() {
+				
+		/*
+		 * AbstractTextFilter.InternalAttribute.DESC => THE_SPECOBJECT_DESC
+		 * AbstractTextFilter.InternalAttribute.IDENTIFIER  => THE_SPECOBJECT_ID
+		 * AbstractTextFilter.InternalAttribute.LONG_NAME => THE_SPECOBJECT_LONG_NAME
+		 *
+		 * Operator, FilterValue, Attribute, expectedResult
+		 * 
+		 */
+		
+		
+		HashMap<InternalAttribute, String> values = new HashMap<AbstractTextFilter.InternalAttribute, String>();
+		values.put(AbstractTextFilter.InternalAttribute.DESC, "THE_SPECOBJECT_DESC");
+		values.put(AbstractTextFilter.InternalAttribute.IDENTIFIER, "THE_SPECOBJECT_ID");
+		values.put(AbstractTextFilter.InternalAttribute.LONG_NAME, "THE_SPECOBJECT_LONG_NAME");
+		
+		
+		ArrayList<Object[]> testData = new ArrayList<Object[]>();
+		
+		Operator operator = IFilter.Operator.EQUALS; 
+		for (AbstractTextFilter.InternalAttribute attribute : values.keySet()) {
+			testData.add(new Object[] { 
+					operator, values.get(attribute), attribute, true,
+					true });
+			testData.add(new Object[] { 
+					operator, values.get(attribute).toLowerCase(), attribute, false,
+					true });
+			testData.add(new Object[] { 
+					operator, values.get(attribute).toLowerCase(), attribute, true,
+					false });
+		}
+		
+		
+		return testData;
+
+	}
+	
+	Operator operator;
+	String filterValue;
+	AbstractTextFilter.InternalAttribute attribute;
+	boolean caseSensitive;
+	boolean expectedResult;
+	
+	
+	
+	public StringFilterInternalTest(Operator operator, String filterValue, AbstractTextFilter.InternalAttribute attribute, Boolean caseSensitive, Boolean expectedResult) {
+		this.operator = operator;
+		this.filterValue = filterValue;
+		this.attribute = attribute;
+		this.expectedResult = expectedResult;
+		this.caseSensitive = caseSensitive;
+	}
+
+	
+	@Test
+	public void testFilter() throws Exception {
+		System.out.println("running " +  this.operator + " " + this.filterValue + " on " + attribute + "expecting " + expectedResult);
+		
+		StringFilter filter = new StringFilter(operator, filterValue, attribute, caseSensitive);
+		doMatch(filter, expectedResult);
+	}
+
+	
+	
+	@Before
+	public void setUp(){
+		createFixture("abcDEF");
+	}
+	
+	@Override
+	public void createFixture(Object value) {
+		String theValue = (String) value;
+		
+		AttributeDefinitionString attributeDefinition = ReqIF10Factory.eINSTANCE.createAttributeDefinitionString();
+		attributeDefinition.setIdentifier("AD_ID0");
+		DatatypeDefinitionString definition = ReqIF10Factory.eINSTANCE.createDatatypeDefinitionString();
+		definition.setIdentifier("DD_ID0");
+		attributeDefinition.setType(definition);
+		AttributeValueString attributeValue = ReqIF10Factory.eINSTANCE.createAttributeValueString();
+		attributeValue.setDefinition(attributeDefinition);
+		attributeValue.setTheValue(theValue);
+		SpecObject specObject = ReqIF10Factory.eINSTANCE.createSpecObject();
+		specObject.getValues().add(attributeValue);
+		specObject.setLastChange(new GregorianCalendar(2014, 12, 03));
+		specObject.setIdentifier("THE_SPECOBJECT_ID");
+		specObject.setDesc("THE_SPECOBJECT_DESC");
+		specObject.setLongName("THE_SPECOBJECT_LONG_NAME");
+		
+		createSpecObjectType(specObject, attributeDefinition);
+		
+		setFixture(specObject);
+	}
+	
+	
+	
+
+	@Override
+	public Set<Operator> getSupportedOperators() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+
+	@Override
+	public IFilter createFilterInstance(Operator operator) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+
+	@Override
+	public void doEmptyTest() throws Exception {
+		// TODO Auto-generated method stub
+	}
+
+	@Override
+	public void testExceptionsUnsupportedOperation() throws Exception {
+		
+	}
+
+}
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 bf77a6d..6a1d37f 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
@@ -13,7 +13,6 @@
 
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
 
 import java.util.GregorianCalendar;
 import java.util.Set;
@@ -149,12 +148,7 @@
 		doMatch(filter, true);
 		
 	}
-	
-	@Test
-	public void testInternalFeatures() throws Exception {
-		fail("not yet implemented");
-	}
-	
+		
 	
 	@Override
 	public void doEmptyTest(){
@@ -310,6 +304,7 @@
 	}
 
 
+	
 
 	@Override
 	public void createFixture(Object value) {
@@ -333,7 +328,6 @@
 		createSpecObjectType(specObject, attributeDefinition);
 		
 		setFixture(specObject);
-		
 	}
 	
 }