Commit 1bb50a33a716418506e6f5953e9829e86cfe0bf5
1 parent
318d3b71
unittest: finish olevba-json validity tests
Showing
1 changed file
with
7 additions
and
6 deletions
tests/json/test_output.py
| ... | ... | @@ -56,6 +56,7 @@ class TestValidJson(unittest.TestCase): |
| 56 | 56 | except ValueError: |
| 57 | 57 | self.fail('Invalid json:\n' + capturer.buffer.getvalue()) |
| 58 | 58 | self.assertNotEqual(len(json_data), 0, msg='Output was empty') |
| 59 | + return json_data | |
| 59 | 60 | |
| 60 | 61 | def run_all_files(self, program, args_without_filename, print_output=False): |
| 61 | 62 | """ run test for a single program over all test files """ |
| ... | ... | @@ -71,20 +72,20 @@ class TestValidJson(unittest.TestCase): |
| 71 | 72 | """ Test msodde.py """ |
| 72 | 73 | self.run_all_files(msodde.main, ['-j', ]) |
| 73 | 74 | |
| 74 | - @unittest.skip('olevba needs patching to accept custom cmd line args') | |
| 75 | 75 | def test_olevba(self): |
| 76 | 76 | """ Test olevba.py with default args """ |
| 77 | 77 | self.run_all_files(olevba.main, ['-j', ]) |
| 78 | 78 | |
| 79 | - @unittest.skip('olevba needs patching to accept custom cmd line args') | |
| 80 | 79 | def test_olevba_analysis(self): |
| 81 | - """ Test olevba.py with default args """ | |
| 80 | + """ Test olevba.py with -a """ | |
| 82 | 81 | self.run_all_files(olevba.main, ['-j', '-a', ]) |
| 83 | 82 | |
| 84 | - @unittest.skip('olevba needs patching to accept custom cmd line args') | |
| 85 | 83 | def test_olevba_recurse(self): |
| 86 | - """ Test olevba.py with default args """ | |
| 87 | - self.run_and_parse(olevba.main, ['-j', '-r', DATA_DIR], True) | |
| 84 | + """ Test olevba.py with -r """ | |
| 85 | + json_data = self.run_and_parse(olevba.main, | |
| 86 | + ['-j', '-r', join(DATA_BASE_DIR, '*')]) | |
| 87 | + self.assertNotEqual(json_data[-1]['n_processed'], 0, | |
| 88 | + msg='self-test fail: No test files found!') | |
| 88 | 89 | |
| 89 | 90 | |
| 90 | 91 | # just in case somebody calls this file as a script | ... | ... |