Source code for tests.SuiteHandler

import unittest


[docs]class SuiteHandler(object): """unittest.TestSuite handler""" def __init__(self, mod_suites): self.mod_suites = mod_suites self.mod_suites["_"] = self.combine_suites() self.result = unittest.result.TestResult()
[docs] def run_suite(self, name="_", result=None): """Run a test suite by name Args: name (str): (optional) Name of the test suite. Defaults to combined suite. result (unittest.TestResult): (optional) Test result holder. Defaults to None, which uses an internal object. """ result = result if result else self.result self.mod_suites[name].run(result)
[docs] def get_suite(self, name="_"): """Retrieve a test suite by name Args: name (str): (optional) Name of the test suite. Defaults to combined suite. Returns: unittest.TestSuite: Test suite comprised of other suites. """ return self.mod_suites[name]
[docs] def combine_suites(self, suites=None): """Combine test suites Args: suites (unittest.TestSuite): (optional) Test suites. Defaults to None, which uses an internal value. Returns: unittest.TestSuite: Test suite comprised of other suites. """ suites = suites if suites else self.mod_suites.values() master_suite = unittest.TestSuite() master_suite.addTests(suites) return master_suite
[docs] def get_names(self): """List the names of test suites in the handler""" return self.mod_suites.keys()
[docs] def add_suite(self, name, suite): """Add a suite to the handler Args: name (str): (optional) Name of the test suite. Defaults to combined suite. suite (unittest.TestSuite): Test suite """ self.mod_suites[name] = suite