OK, so I'm trying to collect the tests with python and add them to the test suite dynamically, but I have a problem with module names. Here's what I've got: ######################### import os from os.path import join import unittest
alltests = unittest.TestSuite() def mightBeATest(f): #TODO check whether it really is a test return f.endswith('.py') and f != '__init__.py' def isModule(d): if not os.path.isdir(d): return False for f in os.listdir(d): if f == '__init__.py': return True return False def getTestsFromDir(dir, currentmod): for f in os.listdir(dir): if not f.startswith('.'): if isModule(f): #TODO how to check whether we are several modules in? mod = __import__(f) getTestsFromDir(os.path.join(dir, f), mod) elif mightBeATest(os.path.join(dir, f)): fname, etx = os.path.splitext(f) print 'adding test with',('alltests.addTests(unittest.TestLoader().loadTestsFromTestCase('+(currentmod.__dict__[fname])+'))') eval('alltests.addTests(unittest.TestLoader().loadTestsFromTestCase('+currentmod.__dict__[fname]+'))') getTestsFromDir(os.curdir, None) print alltests.countTestCases() ############################ it's importing and referring to the current module that I have a problem with...it gives me a key error. -- http://mail.python.org/mailman/listinfo/python-list