14710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm"""Make tests/ into a package. This allows us to "import tests" and 24710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmhave tests.all_tests be a TestSuite representing all test cases 34710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmfrom all test_*.py files in tests/.""" 44710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm# Author: Collin Winter 54710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm 64710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmimport os 74710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmimport os.path 84710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmimport unittest 94710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmimport types 104710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm 114710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmfrom . import support 124710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm 134710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmall_tests = unittest.TestSuite() 144710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm 154710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmtests_dir = os.path.join(os.path.dirname(__file__), '..', 'tests') 164710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmtests = [t[0:-3] for t in os.listdir(tests_dir) 174710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm if t.startswith('test_') and t.endswith('.py')] 184710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm 194710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmloader = unittest.TestLoader() 204710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm 214710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmfor t in tests: 224710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm __import__("",globals(),locals(),[t],level=1) 234710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm mod = globals()[t] 244710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm all_tests.addTests(loader.loadTestsFromModule(mod)) 25