def load_tests(loader, tests, pattern): for entry in pkg_resources.iter_entry_points('qubes.tests.extra'): try: for test_case in entry.load()(): tests.addTests(loader.loadTestsFromTestCase(test_case)) except Exception as err: # pylint: disable=broad-except def runTest(self): raise err ExtraLoadFailure = type('ExtraLoadFailure', (qubes.tests.QubesTestCase,), {entry.name: runTest}) tests.addTest(ExtraLoadFailure(entry.name)) for entry in pkg_resources.iter_entry_points( 'qubes.tests.extra.for_template'): try: for test_case in entry.load()(): tests.addTests(loader.loadTestsFromNames( qubes.tests.create_testcases_for_templates( test_case.__name__, test_case, module=sys.modules[test_case.__module__]))) except Exception as err: # pylint: disable=broad-except def runTest(self): raise err ExtraForTemplateLoadFailure = type('ExtraForTemplateLoadFailure', (qubes.tests.QubesTestCase,), {entry.name: runTest}) tests.addTest(ExtraForTemplateLoadFailure(entry.name)) return tests
def load_tests(loader, tests, pattern): for entry in pkg_resources.iter_entry_points('qubes.tests.extra'): try: for test_case in entry.load()(): tests.addTests(loader.loadTestsFromTestCase(test_case)) except Exception as err: # pylint: disable=broad-except def runTest(self): raise err ExtraLoadFailure = type('ExtraLoadFailure', (qubes.tests.QubesTestCase,), {entry.name: runTest}) tests.addTest(ExtraLoadFailure(entry.name)) for entry in pkg_resources.iter_entry_points( 'qubes.tests.extra.for_template'): try: for test_case in entry.load()(): for template in qubes.tests.list_templates(): tests.addTests(loader.loadTestsFromTestCase( type( '{}_{}_{}'.format( entry.name, test_case.__name__, template), (test_case,), {'template': template} ) )) except Exception as err: # pylint: disable=broad-except def runTest(self): raise err ExtraForTemplateLoadFailure = type('ExtraForTemplateLoadFailure', (qubes.tests.QubesTestCase,), {entry.name: runTest}) tests.addTest(ExtraForTemplateLoadFailure(entry.name)) return tests
def load_tests(loader, tests, pattern): include_list = None if 'QUBES_TEST_EXTRA_INCLUDE' in os.environ: include_list = os.environ['QUBES_TEST_EXTRA_INCLUDE'].split() exclude_list = [] if 'QUBES_TEST_EXTRA_EXCLUDE' in os.environ: exclude_list = os.environ['QUBES_TEST_EXTRA_EXCLUDE'].split() for entry in pkg_resources.iter_entry_points('qubes.tests.extra'): if include_list is not None and entry.name not in include_list: continue if entry.name in exclude_list: continue try: for test_case in entry.load()(): tests.addTests( loader.loadTestsFromNames([ '{}.{}'.format(test_case.__module__, test_case.__name__) ])) except Exception as err: # pylint: disable=broad-except def runTest(self): raise err ExtraLoadFailure = type('ExtraLoadFailure', (qubes.tests.QubesTestCase, ), {entry.name: runTest}) tests.addTest(ExtraLoadFailure(entry.name)) for entry in pkg_resources.iter_entry_points( 'qubes.tests.extra.for_template'): if include_list is not None and entry.name not in include_list: continue if entry.name in exclude_list: continue try: for test_case in entry.load()(): tests.addTests( loader.loadTestsFromNames( qubes.tests.create_testcases_for_templates( test_case.__name__, test_case, module=sys.modules[test_case.__module__]))) except Exception as err: # pylint: disable=broad-except def runTest(self): raise err ExtraForTemplateLoadFailure = type('ExtraForTemplateLoadFailure', (qubes.tests.QubesTestCase, ), {entry.name: runTest}) tests.addTest(ExtraForTemplateLoadFailure(entry.name)) return tests