Added <replaced-by>
[0publish.git] / tests / testall.py
blob0a2e3212e0c421f58cfde42d2c7c1d151a277da4
1 #!/usr/bin/env python
2 import unittest, os, sys
3 for x in ['LANGUAGE', 'LANG']:
4 if x in os.environ:
5 del os.environ[x]
6 try:
7 import coverage
8 coverage.erase()
9 coverage.start()
10 except ImportError:
11 coverage = None
13 my_dir = os.path.dirname(sys.argv[0])
14 if not my_dir:
15 my_dir = os.getcwd()
17 sys.argv.append('-v')
19 suite_names = [f[:-3] for f in os.listdir(my_dir)
20 if f.startswith('test') and f.endswith('.py')]
21 suite_names.remove('testall')
22 suite_names.sort()
24 alltests = unittest.TestSuite()
26 for name in suite_names:
27 m = __import__(name, globals(), locals(), [])
28 alltests.addTest(m.suite)
30 a = unittest.TextTestRunner(verbosity=2).run(alltests)
32 if coverage:
33 coverage.stop()
34 else:
35 print "Coverage module not found. Skipping coverage report."
37 print "\nResult", a
38 if not a.wasSuccessful():
39 sys.exit(1)
41 if coverage:
42 all_sources = []
43 def incl(d):
44 for x in os.listdir(d):
45 if x.endswith('.py'):
46 all_sources.append(os.path.join(d, x))
47 incl('..')
48 coverage.report(all_sources + ['../0publish'])