From d35a9f6a4266b1b55d03621e05185afd5ae820b2 Mon Sep 17 00:00:00 2001
From: Greg DiCristofaro <gregd@basistech.com>
Date: Fri, 30 Oct 2020 15:48:31 -0400
Subject: [PATCH] updated tests to run

---
 bindings/java/build.xml                        |  1 +
 .../sleuthkit/datamodel/TimelineFilter.java    |  3 ++-
 .../datamodel/DataModelTestSuite.java          | 13 ++++++++++++-
 .../org/sleuthkit/datamodel/PublicTagName.java |  4 ++--
 .../timeline/EventTypeFilterTest.java          |  2 +-
 .../datamodel/timeline/RootFilterTest.java     | 18 +++++++++++++++---
 .../datamodel/timeline/TimelineTestSuite.java  |  3 ++-
 7 files changed, 35 insertions(+), 9 deletions(-)

diff --git a/bindings/java/build.xml b/bindings/java/build.xml
index e0abb64d1..98adf3350 100644
--- a/bindings/java/build.xml
+++ b/bindings/java/build.xml
@@ -121,6 +121,7 @@
 	<target name="compile-test" depends="compile" description="compile the tests">
 		<javac debug="on" srcdir="${test}" destdir="${build}" includeantruntime="false">
 			<classpath refid="libraries"/>
+			<compilerarg value="-Xlint" />
 		</javac>
 	</target>
 
diff --git a/bindings/java/src/org/sleuthkit/datamodel/TimelineFilter.java b/bindings/java/src/org/sleuthkit/datamodel/TimelineFilter.java
index 85e2ed066..e32295740 100644
--- a/bindings/java/src/org/sleuthkit/datamodel/TimelineFilter.java
+++ b/bindings/java/src/org/sleuthkit/datamodel/TimelineFilter.java
@@ -655,7 +655,8 @@ public boolean equals(Object obj) {
 			if (notEqual(this.fileTypesFilter, other.getFileTypesFilter())) {
 				return false;
 			}
-			return Objects.equals(this.additionalFilters, other.getSubFilters());
+
+			return Objects.equals(this.additionalFilters, new HashSet<>(other.getSubFilters()));
 		}
 
 	}
diff --git a/bindings/java/test/org/sleuthkit/datamodel/DataModelTestSuite.java b/bindings/java/test/org/sleuthkit/datamodel/DataModelTestSuite.java
index 82c9593f9..0c22fbd61 100644
--- a/bindings/java/test/org/sleuthkit/datamodel/DataModelTestSuite.java
+++ b/bindings/java/test/org/sleuthkit/datamodel/DataModelTestSuite.java
@@ -41,7 +41,18 @@
  * default ant target sets properties for the various folders.
  */
 @RunWith(Suite.class)
-@Suite.SuiteClasses({ CommunicationsManagerTest.class, CaseDbSchemaVersionNumberTest.class,org.sleuthkit.datamodel.TopDownTraversal.class, org.sleuthkit.datamodel.SequentialTraversal.class, org.sleuthkit.datamodel.CrossCompare.class, org.sleuthkit.datamodel.BottomUpTest.class, org.sleuthkit.datamodel.CPPtoJavaCompare.class, org.sleuthkit.datamodel.HashDbTest.class})
+@Suite.SuiteClasses({ 
+	CommunicationsManagerTest.class, 
+	CaseDbSchemaVersionNumberTest.class,
+
+//  Note: these tests have dependencies on images being placed in the input folder: nps-2009-canon2-gen6, ntfs1-gen, and small2	
+//	org.sleuthkit.datamodel.TopDownTraversal.class, 
+//	org.sleuthkit.datamodel.SequentialTraversal.class, 
+//	org.sleuthkit.datamodel.CrossCompare.class, 
+//	org.sleuthkit.datamodel.BottomUpTest.class, 
+//	org.sleuthkit.datamodel.CPPtoJavaCompare.class, 
+//	org.sleuthkit.datamodel.HashDbTest.class
+})
 public class DataModelTestSuite {
 
 	static final String TEST_IMAGE_DIR_NAME = "test" + java.io.File.separator + "Input";
diff --git a/bindings/java/test/org/sleuthkit/datamodel/PublicTagName.java b/bindings/java/test/org/sleuthkit/datamodel/PublicTagName.java
index c14d0258e..9a777aedd 100644
--- a/bindings/java/test/org/sleuthkit/datamodel/PublicTagName.java
+++ b/bindings/java/test/org/sleuthkit/datamodel/PublicTagName.java
@@ -7,8 +7,8 @@
  */
 public class PublicTagName extends TagName {
 
-	public PublicTagName(long id, String displayName, String description, HTML_COLOR color, TskData.FileKnown knownStatus) {
-		super(id, displayName, description, color, knownStatus);
+	public PublicTagName(long id, String displayName, String description, HTML_COLOR color, TskData.FileKnown knownStatus, long tagSetId, int rank) {
+		super(id, displayName, description, color, knownStatus, tagSetId, rank);
 	}
 
 	@Override
diff --git a/bindings/java/test/org/sleuthkit/datamodel/timeline/EventTypeFilterTest.java b/bindings/java/test/org/sleuthkit/datamodel/timeline/EventTypeFilterTest.java
index c4b700ba5..c42b5d5dc 100644
--- a/bindings/java/test/org/sleuthkit/datamodel/timeline/EventTypeFilterTest.java
+++ b/bindings/java/test/org/sleuthkit/datamodel/timeline/EventTypeFilterTest.java
@@ -51,7 +51,7 @@ public void testGetDisplayName() {
 		EventTypeFilter instance = new EventTypeFilter(TimelineEventType.EMAIL);
 		assertEquals(TimelineEventType.EMAIL.getDisplayName(), instance.getDisplayName());
 		instance = new EventTypeFilter(TimelineEventType.ROOT_EVENT_TYPE);
-		assertEquals("Event Type", instance.getDisplayName());
+		assertEquals("Limit event types to", instance.getDisplayName());
 	}
 
 	/**
diff --git a/bindings/java/test/org/sleuthkit/datamodel/timeline/RootFilterTest.java b/bindings/java/test/org/sleuthkit/datamodel/timeline/RootFilterTest.java
index c675d39c0..15513fa7f 100644
--- a/bindings/java/test/org/sleuthkit/datamodel/timeline/RootFilterTest.java
+++ b/bindings/java/test/org/sleuthkit/datamodel/timeline/RootFilterTest.java
@@ -40,13 +40,25 @@ public class RootFilterTest {
 	@Test
 	public void testCopyOf() {
 		System.out.println("copyOf");
-		TimelineFilter instance = getNewRootFilter();
-		assertEquals(instance, instance.copyOf());
+		
+		testCopyOfEqual(new TimelineFilter.TagsFilter());
+		testCopyOfEqual(new TimelineFilter.HashHitsFilter());
+		testCopyOfEqual(new TimelineFilter.TextFilter());
+		testCopyOfEqual(new EventTypeFilter(TimelineEventType.ROOT_EVENT_TYPE));
+		testCopyOfEqual(new TimelineFilter.DataSourcesFilter());
+		testCopyOfEqual(new TimelineFilter.HideKnownFilter());
+		testCopyOfEqual(new TimelineFilter.FileTypesFilter());
+		
+		testCopyOfEqual(getNewRootFilter());
 	}
+	
+	private void testCopyOfEqual(TimelineFilter filter) {
+		assertEquals(filter, filter.copyOf());
+	}
+	
 
 	TimelineFilter.RootFilter getNewRootFilter() {
 		TimelineFilter.TagsFilter tagsFilter = new TimelineFilter.TagsFilter();
-		tagsFilter.addSubFilter(new TimelineFilter.TagNameFilter(new PublicTagName(0, "test tagName", "test tag name description", TagName.HTML_COLOR.NONE, TskData.FileKnown.KNOWN)));
 		TimelineFilter.HashHitsFilter hashHitsFilter = new TimelineFilter.HashHitsFilter();
 		TimelineFilter.TextFilter textFilter = new TimelineFilter.TextFilter();
 		EventTypeFilter eventTypeFilter = new EventTypeFilter(TimelineEventType.ROOT_EVENT_TYPE);
diff --git a/bindings/java/test/org/sleuthkit/datamodel/timeline/TimelineTestSuite.java b/bindings/java/test/org/sleuthkit/datamodel/timeline/TimelineTestSuite.java
index 4879a4d70..4ba1c7bc0 100644
--- a/bindings/java/test/org/sleuthkit/datamodel/timeline/TimelineTestSuite.java
+++ b/bindings/java/test/org/sleuthkit/datamodel/timeline/TimelineTestSuite.java
@@ -27,7 +27,8 @@
 @RunWith(Suite.class)
 @Suite.SuiteClasses({
 	RootFilterTest.class,
-	EventTypeFilterTest.class})
+	EventTypeFilterTest.class
+})
 public class TimelineTestSuite {
 
 }
-- 
GitLab