From 771ec1a9838ed095238a0a0b1eced34b11cc1f28 Mon Sep 17 00:00:00 2001 From: "U-BASIS\\zhaohui" Date: Fri, 6 Apr 2018 15:08:36 -0400 Subject: [PATCH] 3598: 6th test for file filter tests --- .../autopsy/ingest/IngestFileFiltersTest.java | 30 ++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/Core/test/qa-functional/src/org/sleuthkit/autopsy/ingest/IngestFileFiltersTest.java b/Core/test/qa-functional/src/org/sleuthkit/autopsy/ingest/IngestFileFiltersTest.java index ad51847434..e9cab64a20 100644 --- a/Core/test/qa-functional/src/org/sleuthkit/autopsy/ingest/IngestFileFiltersTest.java +++ b/Core/test/qa-functional/src/org/sleuthkit/autopsy/ingest/IngestFileFiltersTest.java @@ -26,7 +26,6 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import static junit.framework.Assert.assertFalse; -import junit.framework.TestCase; import org.netbeans.junit.NbModuleSuite; import org.sleuthkit.autopsy.casemodule.Case; import org.sleuthkit.autopsy.casemodule.CaseActionException; @@ -309,6 +308,35 @@ public class IngestFileFiltersTest extends NbTestCase { } } + public void testCarvingNoUnallocatedSpace() { + HashMap rules = new HashMap<>(); + rules.put("rule1", new Rule("FindJpgExtention", new ExtensionCondition("jpg"), new MetaTypeCondition(MetaTypeCondition.Type.FILES), null, null, null, null)); + rules.put("rule2", new Rule("FindGifExtention", new ExtensionCondition("gif"), new MetaTypeCondition(MetaTypeCondition.Type.FILES), null, null, null, null)); + + //Build the filter to find files with .jpg and .gif extension + FilesSet extensionFilter = new FilesSet("Filter", "Filter to files with .jpg and .gif extension.", false, true, rules); + + try { + Case openCase = Case.getOpenCase(); + ArrayList templates = new ArrayList<>(); + templates.add(getIngestModuleTemplate(new FileTypeIdModuleFactory())); + templates.add(getIngestModuleTemplate(new PhotoRecCarverIngestModuleFactory())); + IngestJobSettings ingestJobSettings = new IngestJobSettings(IngestFileFiltersTest.class.getCanonicalName(), IngestType.FILES_ONLY, templates, extensionFilter); + try { + List errs = IngestJobRunner.runIngestJob(openCase.getDataSources(), ingestJobSettings); + //Ingest fails because Carving wants unallocated space + assertEquals(1, errs.size()); + assertEquals("PhotoRec Carver", errs.get(0).getModuleDisplayName()); + } catch (InterruptedException ex) { + Exceptions.printStackTrace(ex); + Assert.fail(ex); + } + } catch (NoCurrentCaseException | TskCoreException ex) { + Exceptions.printStackTrace(ex); + Assert.fail(ex); + } + } + private void runIngestJob(List datasources, ArrayList templates, FilesSet filter) { IngestJobSettings ingestJobSettings = new IngestJobSettings(IngestFileFiltersTest.class.getCanonicalName(), IngestType.FILES_ONLY, templates, filter); try {