14710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm"""Test suite for distutils.
24710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm
34710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmThis test suite consists of a collection of test modules in the
44710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmdistutils.tests package.  Each test module has a name starting with
54710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm'test' and contains a function test_suite().  The function is expected
64710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmto return an initialized unittest.TestSuite instance.
74710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm
84710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmTests for the command classes in the distutils.command package are
94710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmincluded in distutils.tests as well, instead of using a separate
104710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmdistutils.command.tests package, since command identification is done
114710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmby import rather than matching pre-defined names.
124710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm
134710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm"""
144710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm
154710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmimport os
164710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmimport sys
174710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmimport unittest
184710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmfrom test.test_support import run_unittest
194710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm
204710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm
214710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmhere = os.path.dirname(__file__) or os.curdir
224710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm
234710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm
244710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmdef test_suite():
254710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm    suite = unittest.TestSuite()
264710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm    for fn in os.listdir(here):
274710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm        if fn.startswith("test") and fn.endswith(".py"):
284710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm            modname = "distutils.tests." + fn[:-3]
294710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm            __import__(modname)
304710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm            module = sys.modules[modname]
314710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm            suite.addTest(module.test_suite())
324710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm    return suite
334710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm
344710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm
354710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylmif __name__ == "__main__":
364710c53dcad1ebf3755f3efb9e80ac24bd72a9b2darylm    run_unittest(test_suite())
37