diff options
| author | negasora <negasora@gmail.com> | 2018-06-07 20:27:27 -0400 |
|---|---|---|
| committer | Ryan Snyder <ryan@vector35.com> | 2018-07-10 18:10:57 -0400 |
| commit | 8028bd325bc94a385f99122d87ac906ba717ecbf (patch) | |
| tree | c8607ebf40c1dc97113f316897cfaa0d5cc2cce3 /suite/unit.py | |
| parent | 838cb56a8505fc78d09befedd58dd632eeb2ee62 (diff) | |
updated unit tests with descriptive output
move logging endpoint to environment variable
Diffstat (limited to 'suite/unit.py')
| -rw-r--r-- | suite/unit.py | 210 |
1 files changed, 196 insertions, 14 deletions
diff --git a/suite/unit.py b/suite/unit.py index 993daf41..e4ebad63 100644 --- a/suite/unit.py +++ b/suite/unit.py @@ -61,72 +61,254 @@ class TestBinaryNinjaAPI(unittest.TestCase): def test_Architecture(self): oracle = self.oracle_test_data['test_Architecture'] test = self.builder.test_Architecture() - self.assertTrue(oracle == test, "%s:\n'%s' does not equal\n'%s'" % (self.builder.test_Architecture.__doc__, oracle, test)) + result = "" + differ = difflib.Differ(charjunk=difflib.IS_CHARACTER_JUNK) + skipped_lines = 0 + for delta in differ.compare(test, oracle): + if delta[0] == ' ': + skipped_lines += 1 + continue + if skipped_lines > 0: + result += "<---" + str(skipped_lines) + ' same lines--->\n' + skipped_lines = 0 + delta = delta.replace('\n', '') + result += delta + '\n' + + self.assertTrue(oracle == test, result) def test_Architecture_list(self): oracle = self.oracle_test_data['test_Architecture_list'] test = self.builder.test_Architecture_list() - self.assertTrue(oracle == test, "%s:\n'%s' does not equal\n'%s'" % (self.builder.test_Architecture_list.__doc__, oracle, test)) + result = "" + differ = difflib.Differ(charjunk=difflib.IS_CHARACTER_JUNK) + skipped_lines = 0 + for delta in differ.compare(test, oracle): + if delta[0] == ' ': + skipped_lines += 1 + continue + if skipped_lines > 0: + result += "<---" + str(skipped_lines) + ' same lines--->\n' + skipped_lines = 0 + delta = delta.replace('\n', '') + result += delta + '\n' + + self.assertTrue(oracle == test, result) def test_Assemble(self): oracle = self.oracle_test_data['test_Assemble'] test = self.builder.test_Assemble() - self.assertTrue(oracle == test, "%s:\n'%s' does not equal\n'%s'" % (self.builder.test_Assemble.__doc__, oracle, test)) + result = "" + differ = difflib.Differ(charjunk=difflib.IS_CHARACTER_JUNK) + skipped_lines = 0 + for delta in differ.compare(test, oracle): + if delta[0] == ' ': + skipped_lines += 1 + continue + if skipped_lines > 0: + result += "<---" + str(skipped_lines) + ' same lines--->\n' + skipped_lines = 0 + delta = delta.replace('\n', '') + result += delta + '\n' + + self.assertTrue(oracle == test, result) def test_BinaryViewType_list(self): oracle = self.oracle_test_data['test_BinaryViewType_list'] test = self.builder.test_BinaryViewType_list() - self.assertTrue(oracle == test, "%s:\n'%s' does not equal\n'%s'" % (self.builder.test_BinaryViewType_list.__doc__, oracle, test)) + result = "" + differ = difflib.Differ(charjunk=difflib.IS_CHARACTER_JUNK) + skipped_lines = 0 + for delta in differ.compare(test, oracle): + if delta[0] == ' ': + skipped_lines += 1 + continue + if skipped_lines > 0: + result += "<---" + str(skipped_lines) + ' same lines--->\n' + skipped_lines = 0 + delta = delta.replace('\n', '') + result += delta + '\n' + + self.assertTrue(oracle == test, result) def test_Enumeration(self): oracle = self.oracle_test_data['test_Enumeration'] test = self.builder.test_Enumeration() - self.assertTrue(oracle == test, "%s:\n'%s' does not equal\n'%s'" % (self.builder.test_Enumeration.__doc__, oracle, test)) + result = "" + differ = difflib.Differ(charjunk=difflib.IS_CHARACTER_JUNK) + skipped_lines = 0 + for delta in differ.compare(test, oracle): + if delta[0] == ' ': + skipped_lines += 1 + continue + if skipped_lines > 0: + result += "<---" + str(skipped_lines) + ' same lines--->\n' + skipped_lines = 0 + delta = delta.replace('\n', '') + result += delta + '\n' + + self.assertTrue(oracle == test, result) def test_Function(self): oracle = self.oracle_test_data['test_Function'] test = self.builder.test_Function() - self.assertTrue(oracle == test, "%s:\n'%s' does not equal\n'%s'" % (self.builder.test_Function.__doc__, oracle, test)) + result = "" + differ = difflib.Differ(charjunk=difflib.IS_CHARACTER_JUNK) + skipped_lines = 0 + for delta in differ.compare(test, oracle): + if delta[0] == ' ': + skipped_lines += 1 + continue + if skipped_lines > 0: + result += "<---" + str(skipped_lines) + ' same lines--->\n' + skipped_lines = 0 + delta = delta.replace('\n', '') + result += delta + '\n' + + self.assertTrue(oracle == test, result) def test_Plugin_bin_info(self): oracle = self.oracle_test_data['test_Plugin_bin_info'] test = self.builder.test_Plugin_bin_info() - self.assertTrue(oracle == test, "%s:\n'%s' does not equal\n'%s'" % (self.builder.test_Plugin_bin_info.__doc__, oracle, test)) + result = "" + differ = difflib.Differ(charjunk=difflib.IS_CHARACTER_JUNK) + skipped_lines = 0 + for delta in differ.compare(test, oracle): + if delta[0] == ' ': + skipped_lines += 1 + continue + if skipped_lines > 0: + result += "<---" + str(skipped_lines) + ' same lines--->\n' + skipped_lines = 0 + delta = delta.replace('\n', '') + result += delta + '\n' + + self.assertTrue(oracle == test, result) def test_Struct(self): oracle = self.oracle_test_data['test_Struct'] test = self.builder.test_Struct() - self.assertTrue(oracle == test, "%s:\n'%s' does not equal\n'%s'" % (self.builder.test_Struct.__doc__, oracle, test)) + result = "" + differ = difflib.Differ(charjunk=difflib.IS_CHARACTER_JUNK) + skipped_lines = 0 + for delta in differ.compare(test, oracle): + if delta[0] == ' ': + skipped_lines += 1 + continue + if skipped_lines > 0: + result += "<---" + str(skipped_lines) + ' same lines--->\n' + skipped_lines = 0 + delta = delta.replace('\n', '') + result += delta + '\n' + + self.assertTrue(oracle == test, result) def test_Types(self): oracle = self.oracle_test_data['test_Types'] test = self.builder.test_Types() - self.assertTrue(oracle == test, "%s:\n'%s' does not equal\n'%s'" % (self.builder.test_Types.__doc__, oracle, test)) + result = "" + differ = difflib.Differ(charjunk=difflib.IS_CHARACTER_JUNK) + skipped_lines = 0 + for delta in differ.compare(test, oracle): + if delta[0] == ' ': + skipped_lines += 1 + continue + if skipped_lines > 0: + result += "<---" + str(skipped_lines) + ' same lines--->\n' + skipped_lines = 0 + delta = delta.replace('\n', '') + result += delta + '\n' + + self.assertTrue(oracle == test, result) def test_events(self): oracle = self.oracle_test_data['test_events'] test = self.builder.test_events() - self.assertTrue(oracle == test, "%s:\n'%s' does not equal\n'%s'" % (self.builder.test_events.__doc__, oracle, test)) + result = "" + differ = difflib.Differ(charjunk=difflib.IS_CHARACTER_JUNK) + skipped_lines = 0 + for delta in differ.compare(test, oracle): + if delta[0] == ' ': + skipped_lines += 1 + continue + if skipped_lines > 0: + result += "<---" + str(skipped_lines) + ' same lines--->\n' + skipped_lines = 0 + delta = delta.replace('\n', '') + result += delta + '\n' + + self.assertTrue(oracle == test, result) def test_linear_disassembly(self): oracle = self.oracle_test_data['test_linear_disassembly'] test = self.builder.test_linear_disassembly() - self.assertTrue(oracle == test, "%s:\n'%s' does not equal\n'%s'" % (self.builder.test_linear_disassembly.__doc__, oracle, test)) + result = "" + differ = difflib.Differ(charjunk=difflib.IS_CHARACTER_JUNK) + skipped_lines = 0 + for delta in differ.compare(test, oracle): + if delta[0] == ' ': + skipped_lines += 1 + continue + if skipped_lines > 0: + result += "<---" + str(skipped_lines) + ' same lines--->\n' + skipped_lines = 0 + delta = delta.replace('\n', '') + result += delta + '\n' + + self.assertTrue(oracle == test, result) def test_low_il_stack(self): oracle = self.oracle_test_data['test_low_il_stack'] test = self.builder.test_low_il_stack() - self.assertTrue(oracle == test, "%s:\n'%s' does not equal\n'%s'" % (self.builder.test_low_il_stack.__doc__, oracle, test)) + result = "" + differ = difflib.Differ(charjunk=difflib.IS_CHARACTER_JUNK) + skipped_lines = 0 + for delta in differ.compare(test, oracle): + if delta[0] == ' ': + skipped_lines += 1 + continue + if skipped_lines > 0: + result += "<---" + str(skipped_lines) + ' same lines--->\n' + skipped_lines = 0 + delta = delta.replace('\n', '') + result += delta + '\n' + + self.assertTrue(oracle == test, result) def test_med_il_stack(self): oracle = self.oracle_test_data['test_med_il_stack'] test = self.builder.test_med_il_stack() - self.assertTrue(oracle == test, "%s:\n'%s' does not equal\n'%s'" % (self.builder.test_med_il_stack.__doc__, oracle, test)) + result = "" + differ = difflib.Differ(charjunk=difflib.IS_CHARACTER_JUNK) + skipped_lines = 0 + for delta in differ.compare(test, oracle): + if delta[0] == ' ': + skipped_lines += 1 + continue + if skipped_lines > 0: + result += "<---" + str(skipped_lines) + ' same lines--->\n' + skipped_lines = 0 + delta = delta.replace('\n', '') + result += delta + '\n' + + self.assertTrue(oracle == test, result) def test_partial_register_dataflow(self): oracle = self.oracle_test_data['test_partial_register_dataflow'] test = self.builder.test_partial_register_dataflow() - self.assertTrue(oracle == test, "%s:\n'%s' does not equal\n'%s'" % (self.builder.test_partial_register_dataflow.__doc__, oracle, test)) + result = "" + differ = difflib.Differ(charjunk=difflib.IS_CHARACTER_JUNK) + skipped_lines = 0 + for delta in differ.compare(test, oracle): + if delta[0] == ' ': + skipped_lines += 1 + continue + if skipped_lines > 0: + result += "<---" + str(skipped_lines) + ' same lines--->\n' + skipped_lines = 0 + delta = delta.replace('\n', '') + result += delta + '\n' + + self.assertTrue(oracle == test, result) def test_verify_BNDB_round_trip(self): self.assertTrue(self.verifybuilder.test_verify_BNDB_round_trip(), self.test_verify_BNDB_round_trip.__doc__) |
