diff options
Diffstat (limited to 'tests/format/elf/strings.py')
-rw-r--r-- | tests/format/elf/strings.py | 32 |
1 files changed, 20 insertions, 12 deletions
diff --git a/tests/format/elf/strings.py b/tests/format/elf/strings.py index 0e09d75..71d365e 100644 --- a/tests/format/elf/strings.py +++ b/tests/format/elf/strings.py @@ -9,6 +9,7 @@ from chrysacase import ChrysalideTestCase from pychrysalide.analysis.contents import FileContent from pychrysalide.analysis import LoadedBinary from pychrysalide.arch import RawInstruction +from pychrysalide.format.elf import ElfFormat from threading import Event import os import sys @@ -27,7 +28,20 @@ class TestElfString(ChrysalideTestCase): fullname = sys.modules[cls.__module__].__file__ dirpath = os.path.dirname(fullname) - os.system('make -C %s strings 2>&1 > /dev/null' % dirpath) + os.system('make -C %s strings > /dev/null 2>&1' % dirpath) + + + @classmethod + def tearDownClass(cls): + + super(TestElfString, cls).tearDownClass() + + cls.log('Delete built binaries...') + + fullname = sys.modules[cls.__module__].__file__ + dirpath = os.path.dirname(fullname) + + os.system('make -C %s clean > /dev/null 2>&1' % dirpath) def testElfStrings(self): @@ -41,19 +55,13 @@ class TestElfString(ChrysalideTestCase): cnt = FileContent(fullname[:baselen] + 'strings') self.assertIsNotNone(cnt) - binary = LoadedBinary(cnt) - self.assertIsNotNone(binary) - - def disass_done(binary): - worker.set() + fmt = ElfFormat(cnt) + self.assertIsInstance(fmt, ElfFormat) - binary.connect('disassembly-done', disass_done) - - worker = Event() - - binary.analyse() + binary = LoadedBinary(fmt) + self.assertIsNotNone(binary) - worker.wait() + binary.analyze_and_wait() expected = { 'hello_arm_str' : False, |