| import os.path |
| import sys |
| import unittest |
| |
| |
| POSSIBLE_TEST_BINARIES = [ |
| 'libreadline.so.5', |
| 'libreadline.so.6', |
| ] |
| |
| POSSIBLE_TEST_BINARY_PATHS = [ |
| '/usr/lib/debug', |
| '/lib', |
| '/usr/lib', |
| '/usr/local/lib', |
| '/lib/i386-linux-gnu', |
| ] |
| |
| class TestBase(unittest.TestCase): |
| if sys.version_info.major == 2: |
| assertRaisesRegex = unittest.TestCase.assertRaisesRegexp |
| |
| def get_test_binary(self): |
| """Helper to obtain a test binary for object file testing. |
| |
| FIXME Support additional, highly-likely targets or create one |
| ourselves. |
| """ |
| for d in POSSIBLE_TEST_BINARY_PATHS: |
| for lib in POSSIBLE_TEST_BINARIES: |
| path = os.path.join(d, lib) |
| |
| if os.path.exists(path): |
| return path |
| |
| raise Exception('No suitable test binaries available!') |
| get_test_binary.__test__ = False |
| |
| def get_test_file(self): |
| return os.path.join(os.path.dirname(os.path.abspath(__file__)), "test_file") |
| |
| def get_test_bc(self): |
| return os.path.join(os.path.dirname(os.path.abspath(__file__)), "test.bc") |