From baf65a7e0bdd3a9ea7bca3986e5b7e899279e942 Mon Sep 17 00:00:00 2001 From: momo Date: Tue, 15 Dec 2015 09:21:32 -0500 Subject: [PATCH 1/8] remove jenkins tag --- test/script/config.xml | 2 -- test/script/regression.py | 33 --------------------------------- 2 files changed, 35 deletions(-) diff --git a/test/script/config.xml b/test/script/config.xml index d11f973649..6762cdd5ce 100644 --- a/test/script/config.xml +++ b/test/script/config.xml @@ -9,8 +9,6 @@ indir: the path to input directory outdir: the path to output directory global_csv: path to global csv file golddir: the path to gold directory -jenkins: can be set to True or False. If enabled, check for diffdir -diffdir: (only if jenkins tag is true) the diff directory timing: can be set to True or False. If enabled, record the timing. NOTE: Make sure to use windows style for paths! diff --git a/test/script/regression.py b/test/script/regression.py index 1c7f5e7d1b..27532c50f7 100755 --- a/test/script/regression.py +++ b/test/script/regression.py @@ -415,8 +415,6 @@ class TestRunner(object): test_data.ant.append("-Dnsrl_path=" + test_config.nsrl_path) test_data.ant.append("-Dgold_path=" + test_config.gold) test_data.ant.append("-Dout_path=" + make_local_path(test_data.output_path)) - if test_config.jenkins: - test_data.ant.append("-Ddiff_dir="+ test_config.diff_dir) test_data.ant.append("-Dignore_unalloc=" + "%s" % test_config.args.unallocated) test_data.ant.append("-Dtest.timeout=" + str(test_config.timeout)) @@ -728,12 +726,6 @@ class TestConfiguration(object): self.global_csv = make_local_path(self.global_csv) if parsed_config.getElementsByTagName("golddir"): self.gold = parsed_config.getElementsByTagName("golddir")[0].getAttribute("value").encode().decode("utf_8") - if parsed_config.getElementsByTagName("jenkins"): - self.jenkins = parsed_config.getElementsByTagName("jenkins")[0].getAttribute("value").encode().decode("utf_8") - if self.jenkins and parsed_config.getElementsByTagName("diffdir"): - self.diff_dir = parsed_config.getElementsByTagName("diffdir")[0].getAttribute("value").encode().decode("utf_8") - else: - self.jenkins = False if parsed_config.getElementsByTagName("timing"): self.timing = parsed_config.getElementsByTagName("timing")[0].getAttribute("value").encode().decode("utf_8") self._init_imgs(parsed_config) @@ -1974,31 +1966,6 @@ def find_file_in_dir(dir, name, ext): raise DirNotFoundException(dir) -def copyErrorFiles(attachments, test_config): - """Move email attachments to the location specified in the config file. - Used for Jenkins build. - - Args: - attachments: a listof_String, the files to be moved - test_config: TestConfiguration, used to determine where to move the files to - """ - call = ['pwd'] - subprocess.call(call) - - # remove old diff files - filelist = [f for f in os.listdir(test_config.diff_dir) if (f.endswith(".txt") or f.endswith(".html"))] - for f in filelist: - if os.path.isfile(test_config.diff_dir + "/" + f): - os.remove(test_config.diff_dir + "/" + f) - - # move in the new diff files - for file in attachments: - filename = ntpath.basename(file) - destination = os.path.join(test_config.diff_dir, filename) - call = ['cp', file, destination] - subprocess.call(call) - - class OS: LINUX, MAC, WIN, CYGWIN = range(4) From 7e2ba785ed167d01eea5b35922495a508da7e50f Mon Sep 17 00:00:00 2001 From: momo Date: Tue, 15 Dec 2015 14:27:22 -0500 Subject: [PATCH 2/8] if empty, use default order --- .../corecomponents/DataResultViewerTable.java | 40 +++++++++++-------- .../corecomponents/TableFilterNode.java | 2 +- 2 files changed, 25 insertions(+), 17 deletions(-) diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java index e9fab8ed6f..ca2c6d6487 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java @@ -346,6 +346,16 @@ public class DataResultViewerTable extends AbstractDataResultViewer { * @param root The parent Node of the ContentNodes */ private void setupTable(final Node root) { + + String type = ""; + if(root instanceof TableFilterNode) { + TableFilterNode filterNode = (TableFilterNode) root; + type = filterNode.getItemType(); + } + else { + Logger.getLogger(DataResultViewerTable.class.getName()).log(Level.INFO, + "Node {0} is not TableFilterNode, columns are going to be in default order", root.getName()); + } em.setRootContext(root); @@ -356,10 +366,10 @@ public class DataResultViewerTable extends AbstractDataResultViewer { } if(currentRoot != null && !propertiesAcc.isEmpty()) { - storeProperties(currentRoot); + storeProperties(currentRoot, type); } currentRoot = root; - List> props = loadProperties(currentRoot); + List> props = loadProperties(currentRoot, type); /* * OutlineView makes the first column be the result of @@ -433,22 +443,29 @@ public class DataResultViewerTable extends AbstractDataResultViewer { } // Store the column arrangements of the given Node. - private void storeProperties(Node root) { + private void storeProperties(Node root, String type) { + if(type.isEmpty()) + return; List> props = new ArrayList<>(propertiesAcc); for (int i = 0; i < props.size(); i++) { Property prop = props.get(i); - NbPreferences.forModule(this.getClass()).put(getUniqueName(root, prop), String.valueOf(i)); + NbPreferences.forModule(this.getClass()).put(getUniqueName(root, prop, type), String.valueOf(i)); } } // Load the column arrangement stored for the given node if exists. - private List> loadProperties(Node root) { + private List> loadProperties(Node root, String type) { propertiesAcc.clear(); this.getAllChildPropertyHeadersRec(root, 100); List> props = new ArrayList<>(propertiesAcc); + + // If type is not defined, use default order for columns + if(type.isEmpty()) + return props; + List> orderedProps = new ArrayList<>(propertiesAcc); for (Property prop : props) { - Integer value = Integer.valueOf(NbPreferences.forModule(this.getClass()).get(getUniqueName(root, prop), "-1")); + Integer value = Integer.valueOf(NbPreferences.forModule(this.getClass()).get(getUniqueName(root, prop, type), "-1")); if (value >= 0) { /** * The original contents of orderedProps do not matter when setting the new ordered values. The reason @@ -465,16 +482,7 @@ public class DataResultViewerTable extends AbstractDataResultViewer { } // Get unique name for node and it's property. - private String getUniqueName(Node root, Property prop) { - String type = "Generic"; - if(root instanceof TableFilterNode) { - TableFilterNode filterNode = (TableFilterNode) root; - type = filterNode.getItemType(); - } - else { - Logger.getLogger(DataResultViewerTable.class.getName()).log(Level.SEVERE, "Node is not TableFilterNode"); - } - + private String getUniqueName(Node root, Property prop, String type) { return Case.getCurrentCase().getName() + "." + type + "." + prop.getName().replaceAll("[^a-zA-Z0-9_]", "") + ".columnOrder"; } diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/TableFilterNode.java b/Core/src/org/sleuthkit/autopsy/corecomponents/TableFilterNode.java index e622ee09b6..11caf66c75 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/TableFilterNode.java +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/TableFilterNode.java @@ -40,7 +40,7 @@ public class TableFilterNode extends FilterNode { public TableFilterNode(Node arg, boolean crChild) { super(arg, TableFilterChildren.createInstance(arg, crChild)); this.createChild = crChild; - this.itemType = "Generic"; + this.itemType = ""; } public TableFilterNode(Node arg, boolean crChild, String itemType) { From 91ccfdcf0d3e213804579ad5b62315ef7b5552af Mon Sep 17 00:00:00 2001 From: momo Date: Tue, 15 Dec 2015 14:32:41 -0500 Subject: [PATCH 3/8] use global --- .../corecomponents/DataResultViewerTable.java | 27 ++++++++++--------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java index ca2c6d6487..1c484887e6 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java @@ -72,6 +72,7 @@ public class DataResultViewerTable extends AbstractDataResultViewer { private final DummyNodeListener dummyNodeListener = new DummyNodeListener(); private static final String DUMMY_NODE_DISPLAY_NAME = NbBundle.getMessage(DataResultViewerTable.class, "DataResultViewerTable.dummyNodeDisplayName"); private Node currentRoot; + private String currentRootItemType; /** * Creates a DataResultViewerTable object that is compatible with node @@ -347,12 +348,12 @@ public class DataResultViewerTable extends AbstractDataResultViewer { */ private void setupTable(final Node root) { - String type = ""; if(root instanceof TableFilterNode) { TableFilterNode filterNode = (TableFilterNode) root; - type = filterNode.getItemType(); + currentRootItemType = filterNode.getItemType(); } else { + currentRootItemType = ""; Logger.getLogger(DataResultViewerTable.class.getName()).log(Level.INFO, "Node {0} is not TableFilterNode, columns are going to be in default order", root.getName()); } @@ -366,10 +367,10 @@ public class DataResultViewerTable extends AbstractDataResultViewer { } if(currentRoot != null && !propertiesAcc.isEmpty()) { - storeProperties(currentRoot, type); + storeProperties(); } currentRoot = root; - List> props = loadProperties(currentRoot, type); + List> props = loadProperties(); /* * OutlineView makes the first column be the result of @@ -443,29 +444,29 @@ public class DataResultViewerTable extends AbstractDataResultViewer { } // Store the column arrangements of the given Node. - private void storeProperties(Node root, String type) { - if(type.isEmpty()) + private void storeProperties() { + if(currentRootItemType.isEmpty()) return; List> props = new ArrayList<>(propertiesAcc); for (int i = 0; i < props.size(); i++) { Property prop = props.get(i); - NbPreferences.forModule(this.getClass()).put(getUniqueName(root, prop, type), String.valueOf(i)); + NbPreferences.forModule(this.getClass()).put(getUniqueName(prop), String.valueOf(i)); } } // Load the column arrangement stored for the given node if exists. - private List> loadProperties(Node root, String type) { + private List> loadProperties() { propertiesAcc.clear(); - this.getAllChildPropertyHeadersRec(root, 100); + this.getAllChildPropertyHeadersRec(currentRoot, 100); List> props = new ArrayList<>(propertiesAcc); // If type is not defined, use default order for columns - if(type.isEmpty()) + if(currentRootItemType.isEmpty()) return props; List> orderedProps = new ArrayList<>(propertiesAcc); for (Property prop : props) { - Integer value = Integer.valueOf(NbPreferences.forModule(this.getClass()).get(getUniqueName(root, prop, type), "-1")); + Integer value = Integer.valueOf(NbPreferences.forModule(this.getClass()).get(getUniqueName(prop), "-1")); if (value >= 0) { /** * The original contents of orderedProps do not matter when setting the new ordered values. The reason @@ -482,8 +483,8 @@ public class DataResultViewerTable extends AbstractDataResultViewer { } // Get unique name for node and it's property. - private String getUniqueName(Node root, Property prop, String type) { - return Case.getCurrentCase().getName() + "." + type + "." + private String getUniqueName(Property prop) { + return Case.getCurrentCase().getName() + "." + currentRootItemType + "." + prop.getName().replaceAll("[^a-zA-Z0-9_]", "") + ".columnOrder"; } From 4ce10d9661b2ccadc8c428740b9cb450794d7331 Mon Sep 17 00:00:00 2001 From: "U-Mhmdfy-PC\\Mhmdfy" Date: Wed, 16 Dec 2015 13:02:02 -0500 Subject: [PATCH 4/8] use store/load state instead of properties --- .../corecomponents/DataResultViewerTable.java | 38 +++++++++---------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java index 1c484887e6..d08a9ca8b1 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java @@ -347,16 +347,6 @@ public class DataResultViewerTable extends AbstractDataResultViewer { * @param root The parent Node of the ContentNodes */ private void setupTable(final Node root) { - - if(root instanceof TableFilterNode) { - TableFilterNode filterNode = (TableFilterNode) root; - currentRootItemType = filterNode.getItemType(); - } - else { - currentRootItemType = ""; - Logger.getLogger(DataResultViewerTable.class.getName()).log(Level.INFO, - "Node {0} is not TableFilterNode, columns are going to be in default order", root.getName()); - } em.setRootContext(root); @@ -366,11 +356,20 @@ public class DataResultViewerTable extends AbstractDataResultViewer { return; } - if(currentRoot != null && !propertiesAcc.isEmpty()) { - storeProperties(); - } + storeState(); + + // set the new root and its type. currentRoot = root; - List> props = loadProperties(); + if(root instanceof TableFilterNode) { + TableFilterNode filterNode = (TableFilterNode) root; + currentRootItemType = filterNode.getItemType(); + } + else { + currentRootItemType = ""; + Logger.getLogger(DataResultViewerTable.class.getName()).log(Level.INFO, + "Node {0} is not TableFilterNode, columns are going to be in default order", root.getName()); + } + List> props = loadState(); /* * OutlineView makes the first column be the result of @@ -443,9 +442,10 @@ public class DataResultViewerTable extends AbstractDataResultViewer { } } - // Store the column arrangements of the given Node. - private void storeProperties() { - if(currentRootItemType.isEmpty()) + // Store the state of current root Node. + private void storeState() { + if(currentRoot == null || propertiesAcc.isEmpty() + || currentRootItemType.isEmpty()) return; List> props = new ArrayList<>(propertiesAcc); for (int i = 0; i < props.size(); i++) { @@ -454,8 +454,8 @@ public class DataResultViewerTable extends AbstractDataResultViewer { } } - // Load the column arrangement stored for the given node if exists. - private List> loadProperties() { + // Load the state of current root Node if exists. + private List> loadState() { propertiesAcc.clear(); this.getAllChildPropertyHeadersRec(currentRoot, 100); List> props = new ArrayList<>(propertiesAcc); From d7244652c02ce8c5d587ef849a94bdc64b9bf691 Mon Sep 17 00:00:00 2001 From: momo Date: Thu, 17 Dec 2015 08:48:44 -0500 Subject: [PATCH 5/8] remove global variable --- .../corecomponents/DataResultViewerTable.java | 41 ++++++++++--------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java index d08a9ca8b1..57f1a3452a 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataResultViewerTable.java @@ -72,7 +72,6 @@ public class DataResultViewerTable extends AbstractDataResultViewer { private final DummyNodeListener dummyNodeListener = new DummyNodeListener(); private static final String DUMMY_NODE_DISPLAY_NAME = NbBundle.getMessage(DataResultViewerTable.class, "DataResultViewerTable.dummyNodeDisplayName"); private Node currentRoot; - private String currentRootItemType; /** * Creates a DataResultViewerTable object that is compatible with node @@ -358,17 +357,8 @@ public class DataResultViewerTable extends AbstractDataResultViewer { storeState(); - // set the new root and its type. + // set the new root as current currentRoot = root; - if(root instanceof TableFilterNode) { - TableFilterNode filterNode = (TableFilterNode) root; - currentRootItemType = filterNode.getItemType(); - } - else { - currentRootItemType = ""; - Logger.getLogger(DataResultViewerTable.class.getName()).log(Level.INFO, - "Node {0} is not TableFilterNode, columns are going to be in default order", root.getName()); - } List> props = loadState(); /* @@ -444,13 +434,19 @@ public class DataResultViewerTable extends AbstractDataResultViewer { // Store the state of current root Node. private void storeState() { - if(currentRoot == null || propertiesAcc.isEmpty() - || currentRootItemType.isEmpty()) + if(currentRoot == null || propertiesAcc.isEmpty()) return; + + TableFilterNode tfn; + if(currentRoot instanceof TableFilterNode) + tfn = (TableFilterNode) currentRoot; + else + return; + List> props = new ArrayList<>(propertiesAcc); for (int i = 0; i < props.size(); i++) { Property prop = props.get(i); - NbPreferences.forModule(this.getClass()).put(getUniqueName(prop), String.valueOf(i)); + NbPreferences.forModule(this.getClass()).put(getUniqueColName(prop, tfn.getItemType()), String.valueOf(i)); } } @@ -460,13 +456,20 @@ public class DataResultViewerTable extends AbstractDataResultViewer { this.getAllChildPropertyHeadersRec(currentRoot, 100); List> props = new ArrayList<>(propertiesAcc); - // If type is not defined, use default order for columns - if(currentRootItemType.isEmpty()) + // If node is not table filter node, use default order for columns + TableFilterNode tfn; + if(currentRoot instanceof TableFilterNode) { + tfn = (TableFilterNode) currentRoot; + } + else { + Logger.getLogger(DataResultViewerTable.class.getName()).log(Level.INFO, + "Node {0} is not TableFilterNode, columns are going to be in default order", currentRoot.getName()); return props; + } List> orderedProps = new ArrayList<>(propertiesAcc); for (Property prop : props) { - Integer value = Integer.valueOf(NbPreferences.forModule(this.getClass()).get(getUniqueName(prop), "-1")); + Integer value = Integer.valueOf(NbPreferences.forModule(this.getClass()).get(getUniqueColName(prop, tfn.getItemType()), "-1")); if (value >= 0) { /** * The original contents of orderedProps do not matter when setting the new ordered values. The reason @@ -483,8 +486,8 @@ public class DataResultViewerTable extends AbstractDataResultViewer { } // Get unique name for node and it's property. - private String getUniqueName(Property prop) { - return Case.getCurrentCase().getName() + "." + currentRootItemType + "." + private String getUniqueColName(Property prop, String type) { + return Case.getCurrentCase().getName() + "." + type + "." + prop.getName().replaceAll("[^a-zA-Z0-9_]", "") + ".columnOrder"; } From 9493ba8fd2f168b43dea9ca414225f4346873642 Mon Sep 17 00:00:00 2001 From: momo Date: Thu, 17 Dec 2015 15:35:13 -0500 Subject: [PATCH 6/8] sort gold before compare --- test/script/regression.py | 2 +- test/script/tskdbdiff.py | 14 +++++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/test/script/regression.py b/test/script/regression.py index 4a69295dc2..1c7f5e7d1b 100755 --- a/test/script/regression.py +++ b/test/script/regression.py @@ -1297,7 +1297,7 @@ class Logs(object): log.close() common_log.write("\n") common_log.close() - srtcmdlst = ["sort", "--ignore-case", test_data.common_log_path, "-o", test_data.common_log_path] + srtcmdlst = ["sort", test_data.common_log_path, "-o", test_data.common_log_path] subprocess.call(srtcmdlst) except (OSError, IOError) as e: Errors.print_error("Error: Unable to generate the common log.") diff --git a/test/script/tskdbdiff.py b/test/script/tskdbdiff.py index b061007036..6161179672 100755 --- a/test/script/tskdbdiff.py +++ b/test/script/tskdbdiff.py @@ -87,9 +87,13 @@ class TskDbDiff(object): self._dump = os.path.join(self.output_dir, "DBDump.txt") self._dump_diff = os.path.join(self.output_dir, "DBDump-Diff.txt") - if self.gold_bb_dump is None: - self.gold_bb_dump = TskDbDiff._get_tmp_file("GoldBlackboardDump", ".txt") - self.gold_dump = TskDbDiff._get_tmp_file("GoldDBDump", ".txt") + if self.gold_bb_dump is not None: + srtcmdlst = ["sort", self.gold_bb_dump, "-o", TskDbDiff._get_tmp_file("GoldBlackboardDump", ".txt")] + subprocess.call(srtcmdlst) + srtcmdlst = ["sort", self.gold_dump, "-o", TskDbDiff._get_tmp_file("GoldDBDump", ".txt")] + subprocess.call(srtcmdlst) + self.gold_bb_dump = TskDbDiff._get_tmp_file("GoldBlackboardDump", ".txt") + self.gold_dump = TskDbDiff._get_tmp_file("GoldDBDump", ".txt") def _cleanup_diff(self): @@ -251,7 +255,7 @@ class TskDbDiff(object): conn.close() # Now sort the file - srtcmdlst = ["sort", "--ignore-case", unsorted_dump, "-o", bb_dump_file] + srtcmdlst = ["sort", unsorted_dump, "-o", bb_dump_file] subprocess.call(srtcmdlst) @@ -286,7 +290,7 @@ class TskDbDiff(object): db_log.write('%s\n' % line) # Now sort the file - srtcmdlst = ["sort", "--ignore-case", dump_file, "-o", dump_file] + srtcmdlst = ["sort", dump_file, "-o", dump_file] subprocess.call(srtcmdlst) conn.close() From 818090f880627c72da79e203c1572106feb7b918 Mon Sep 17 00:00:00 2001 From: momo Date: Thu, 17 Dec 2015 15:49:16 -0500 Subject: [PATCH 7/8] comment --- test/script/tskdbdiff.py | 1 + 1 file changed, 1 insertion(+) diff --git a/test/script/tskdbdiff.py b/test/script/tskdbdiff.py index 6161179672..2c7d539eec 100755 --- a/test/script/tskdbdiff.py +++ b/test/script/tskdbdiff.py @@ -87,6 +87,7 @@ class TskDbDiff(object): self._dump = os.path.join(self.output_dir, "DBDump.txt") self._dump_diff = os.path.join(self.output_dir, "DBDump-Diff.txt") + # Sorting gold before comparing (sort behaves differently in different environments) if self.gold_bb_dump is not None: srtcmdlst = ["sort", self.gold_bb_dump, "-o", TskDbDiff._get_tmp_file("GoldBlackboardDump", ".txt")] subprocess.call(srtcmdlst) From 1e30edeacbd5e91c45565318d9b093f5ca986e6d Mon Sep 17 00:00:00 2001 From: momo Date: Fri, 18 Dec 2015 08:59:18 -0500 Subject: [PATCH 8/8] get_temp creates new file everytime, need to call it only once --- test/script/tskdbdiff.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/test/script/tskdbdiff.py b/test/script/tskdbdiff.py index 2c7d539eec..5f2095d7a7 100755 --- a/test/script/tskdbdiff.py +++ b/test/script/tskdbdiff.py @@ -88,13 +88,15 @@ class TskDbDiff(object): self._dump_diff = os.path.join(self.output_dir, "DBDump-Diff.txt") # Sorting gold before comparing (sort behaves differently in different environments) + new_bb = TskDbDiff._get_tmp_file("GoldBlackboardDump", ".txt") + new_db = TskDbDiff._get_tmp_file("GoldDBDump", ".txt") if self.gold_bb_dump is not None: - srtcmdlst = ["sort", self.gold_bb_dump, "-o", TskDbDiff._get_tmp_file("GoldBlackboardDump", ".txt")] + srtcmdlst = ["sort", self.gold_bb_dump, "-o", new_bb] subprocess.call(srtcmdlst) - srtcmdlst = ["sort", self.gold_dump, "-o", TskDbDiff._get_tmp_file("GoldDBDump", ".txt")] + srtcmdlst = ["sort", self.gold_dump, "-o", new_db] subprocess.call(srtcmdlst) - self.gold_bb_dump = TskDbDiff._get_tmp_file("GoldBlackboardDump", ".txt") - self.gold_dump = TskDbDiff._get_tmp_file("GoldDBDump", ".txt") + self.gold_bb_dump = new_bb + self.gold_dump = new_db def _cleanup_diff(self):