def run_suite(self, path, display_name, suffix='[!_]*.py', load_from_name=False): ''' Execute a unit test suite ''' loader = TestLoader() try: if load_from_name: tests = loader.loadTestsFromName(display_name) else: tests = loader.discover(path, suffix, self.testsuite_directory) except AttributeError: print('Could not locate test \'{0}\'. Exiting.'.format(display_name)) sys.exit(1) header = '{0} Tests'.format(display_name) print_header('Starting {0}'.format(header), width=self.options.output_columns) if self.options.xml_out: runner = XMLTestRunner( stream=sys.stdout, output=self.xml_output_dir, verbosity=self.options.verbosity ).run(tests) self.testsuite_results.append((header, runner)) else: runner = TextTestRunner( stream=sys.stdout, verbosity=self.options.verbosity).run(tests) self.testsuite_results.append((header, runner)) return runner.wasSuccessful()
def run_suite(self, path, display_name, suffix='[!_]*.py', load_from_name=False): ''' Execute a unit test suite ''' loader = TestLoader() if load_from_name: tests = loader.loadTestsFromName(display_name) else: tests = loader.discover(path, suffix, self.testsuite_directory) header = '{0} Tests'.format(display_name) print_header('Starting {0}'.format(header)) if self.options.xml_out: runner = xmlrunner.XMLTestRunner( stream=sys.stdout, output=self.xml_output_dir, verbosity=self.options.verbosity ).run(tests) self.testsuite_results.append((header, runner)) else: runner = TextTestRunner( stream=sys.stdout, verbosity=self.options.verbosity).run(tests) self.testsuite_results.append((header, runner)) return runner.wasSuccessful()
def run_suite(self, path, display_name, suffix='[!_]*.py', load_from_name=False): ''' Execute a unit test suite ''' loader = TestLoader() if load_from_name: tests = loader.loadTestsFromName(display_name) else: tests = loader.discover(path, suffix, self.testsuite_directory) header = '{0} Tests'.format(display_name) print_header('Starting {0}'.format(header)) if self.options.xml_out: runner = xmlrunner.XMLTestRunner( stream=sys.stdout, output=self.xml_output_dir, verbosity=self.options.verbosity).run(tests) self.testsuite_results.append((header, runner)) else: runner = TextTestRunner( stream=sys.stdout, verbosity=self.options.verbosity).run(tests) self.testsuite_results.append((header, runner)) return runner.wasSuccessful()
def run_suite(self, path, display_name, suffix='[!_]*.py', load_from_name=False): ''' Execute a unit test suite ''' loader = TestLoader() try: if load_from_name: tests = loader.loadTestsFromName(display_name) else: tests = loader.discover(path, suffix, self.testsuite_directory) except (AttributeError, ImportError): print( 'Could not locate test \'{0}\'. Exiting.'.format(display_name)) sys.exit(1) header = '{0} Tests'.format(display_name) print_header('Starting {0}'.format(header), width=self.options.output_columns) if self.options.xml_out: runner = XMLTestRunner(stream=sys.stdout, output=self.xml_output_dir, verbosity=self.options.verbosity).run(tests) self.testsuite_results.append((header, runner)) else: runner = TextTestRunner( stream=sys.stdout, verbosity=self.options.verbosity).run(tests) self.testsuite_results.append((header, runner)) return runner.wasSuccessful()
def run_testcase(self, testcase): ''' Run one or more ``unittest.case.TestCase`` ''' header = '' loader = TestLoader() if isinstance(testcase, list): for case in testcase: tests = loader.loadTestsFromTestCase(case) else: tests = loader.loadTestsFromTestCase(testcase) if not isinstance(testcase, list): header = '{0} Tests'.format(testcase.__name__) print_header('Starting {0}'.format(header)) runner = TextTestRunner(verbosity=self.options.verbosity).run(tests) self.testsuite_results.append((header, runner)) return runner.wasSuccessful()
def run_suite(self, path, display_name, suffix='[!_]*.py', load_from_name=False, additional_test_dirs=None): ''' Execute a unit test suite ''' loaded_custom = False loader = TestLoader() try: if load_from_name: tests = loader.loadTestsFromName(display_name) else: if additional_test_dirs is None or self.testsuite_directory.startswith(path): tests = loader.discover(path, suffix, self.testsuite_directory) else: tests = loader.discover(path, suffix) loaded_custom = True except (AttributeError, ImportError): print('Could not locate test \'{0}\'. Exiting.'.format(display_name)) sys.exit(1) if additional_test_dirs and not loaded_custom: for test_dir in additional_test_dirs: additional_tests = loader.discover(test_dir, suffix, test_dir) tests.addTests(additional_tests) header = '{0} Tests'.format(display_name) print_header('Starting {0}'.format(header), width=self.options.output_columns) if self.options.xml_out: runner = XMLTestRunner( stream=sys.stdout, output=self.xml_output_dir, verbosity=self.options.verbosity ).run(tests) self.testsuite_results.append((header, runner)) else: runner = TextTestRunner( stream=sys.stdout, verbosity=self.options.verbosity).run(tests) self.testsuite_results.append((header, runner)) return runner.wasSuccessful()
def run_testcase(self, testcase): ''' Run one or more ``unittest.case.TestCase`` ''' header = '' loader = TestLoader() if isinstance(testcase, list): for case in testcase: tests = loader.loadTestsFromTestCase(case) else: tests = loader.loadTestsFromTestCase(testcase) if not isinstance(testcase, list): header = '{0} Tests'.format(testcase.__name__) print_header('Starting {0}'.format(header)) runner = TextTestRunner( verbosity=self.options.verbosity).run(tests) self.testsuite_results.append((header, runner)) return runner.wasSuccessful()
from salttesting import TestSuite, TestLoader import os tests = TestSuite() loader = TestLoader() # add some useful tests from the main suite extra = ('integration.modules.sysmod', ) tests.addTest(loader.loadTestsFromNames(extra)) # this should resolve to the salt-contrib directory # need to check if we are compiled or not! current_file = __file__ if current_file[-4:] == '.pyc': current_file = current_file[:-1] current_dir = os.path.dirname(os.path.realpath(current_file)) l = len(current_dir) names = [] for dirname, dirs, files in os.walk(current_dir): parts = dirname[l:].split(os.sep) if len(parts) < 2: continue module = '.'.join(parts[1:]) for f in files: if f[-3:] == '.py' and f != '__init__.py': names.append('{0}.{1}'.format(module, f[:-3]))