summaryrefslogtreecommitdiff
path: root/test.py
diff options
context:
space:
mode:
authorscoder <none@none>2008-05-19 23:59:46 +0200
committerscoder <none@none>2008-05-19 23:59:46 +0200
commit6ebf97dcd4b40dbf3b0d327a4957c3c67def219a (patch)
tree49266a4b094f1901efae80edbf7b12cbcc0b2bf6 /test.py
parent2174b5740678fe9b9846be8b69ac26bf3a0952f3 (diff)
downloadpython-lxml-6ebf97dcd4b40dbf3b0d327a4957c3c67def219a.tar.gz
[svn r3678] r4224@delle: sbehnel | 2008-05-18 13:36:07 +0200
Py3 syntax fixes --HG-- branch : trunk
Diffstat (limited to 'test.py')
-rw-r--r--test.py46
1 files changed, 25 insertions, 21 deletions
diff --git a/test.py b/test.py
index 6c90bcdb..24b1af69 100644
--- a/test.py
+++ b/test.py
@@ -71,10 +71,16 @@ import types
import getopt
import unittest
import traceback
-from sets import Set
+try:
+ set
+except NameError:
+ from sets import Set as set
__metaclass__ = type
+def stderr(text):
+ sys.stderr.write(text)
+ sys.stderr.write("\n")
class Options:
"""Configurable properties of the test runner."""
@@ -169,7 +175,7 @@ def get_test_files(cfg):
results.append(path)
return
if '__init__.py' not in files:
- print >> sys.stderr, "%s is not a package" % dir
+ stderr("%s is not a package" % dir)
return
for file in files:
if file.startswith('test') and file.endswith('.py'):
@@ -236,7 +242,7 @@ def get_test_classes_from_testsuite(suite):
"""Returns a set of test case classes used in a test suite."""
if not isinstance(suite, unittest.TestSuite):
raise TypeError('not a TestSuite', suite)
- results = Set()
+ results = set()
for test in suite._tests:
if isinstance(test, unittest.TestCase):
results.add(test.__class__)
@@ -259,16 +265,14 @@ def get_test_cases(test_files, cfg, tracer=None):
if test_suite is None:
continue
if cfg.warn_omitted:
- all_classes = Set(get_all_test_cases(module))
+ all_classes = set(get_all_test_cases(module))
classes_in_suite = get_test_classes_from_testsuite(test_suite)
difference = all_classes - classes_in_suite
for test_class in difference:
# surround the warning with blank lines, otherwise it tends
# to get lost in the noise
- print >> sys.stderr
- print >> sys.stderr, ("%s: WARNING: %s not in test suite"
+ stderr("\n%s: WARNING: %s not in test suite\n"
% (file, test_class.__name__))
- print >> sys.stderr
if (cfg.level is not None and
getattr(test_suite, 'level', 0) > cfg.level):
continue
@@ -280,7 +284,7 @@ def get_test_cases(test_files, cfg, tracer=None):
def get_test_hooks(test_files, cfg, tracer=None):
"""Returns a list of test hooks from a given list of test modules."""
results = []
- dirs = Set(map(os.path.dirname, test_files))
+ dirs = set(map(os.path.dirname, test_files))
for dir in list(dirs):
if os.path.basename(dir) == 'ftests':
dirs.add(os.path.join(os.path.dirname(dir), 'tests'))
@@ -425,7 +429,7 @@ class CustomTestRunner(unittest.TextTestRunner):
self.stream.writeln()
if not result.wasSuccessful():
self.stream.write("FAILED (")
- failed, errored = map(len, (result.failures, result.errors))
+ failed, errored = list(map(len, (result.failures, result.errors)))
if failed:
self.stream.write("failures=%d" % failed)
if errored:
@@ -447,8 +451,8 @@ def main(argv):
# Environment
if sys.version_info < (2, 3):
- print >> sys.stderr, '%s: need Python 2.3 or later' % argv[0]
- print >> sys.stderr, 'your python is %s' % sys.version
+ stderr('%s: need Python 2.3 or later' % argv[0])
+ stderr('your python is %s' % sys.version)
return 1
# Defaults
@@ -476,7 +480,7 @@ def main(argv):
'level=', 'all-levels', 'coverage'])
for k, v in opts:
if k == '-h':
- print __doc__
+ print(__doc__)
return 0
elif k == '-v':
cfg.verbosity += 1
@@ -509,22 +513,22 @@ def main(argv):
try:
cfg.level = int(v)
except ValueError:
- print >> sys.stderr, '%s: invalid level: %s' % (argv[0], v)
- print >> sys.stderr, 'run %s -h for help'
+ stderr('%s: invalid level: %s' % (argv[0], v))
+ stderr('run %s -h for help')
return 1
elif k == '--all-levels':
cfg.level = None
else:
- print >> sys.stderr, '%s: invalid option: %s' % (argv[0], k)
- print >> sys.stderr, 'run %s -h for help'
+ stderr('%s: invalid option: %s' % (argv[0], k))
+ stderr('run %s -h for help')
return 1
if args:
cfg.pathname_regex = args[0]
if len(args) > 1:
cfg.test_regex = args[1]
if len(args) > 2:
- print >> sys.stderr, '%s: too many arguments: %s' % (argv[0], args[2])
- print >> sys.stderr, 'run %s -h for help'
+ stderr('%s: too many arguments: %s' % (argv[0], args[2]))
+ stderr('run %s -h for help')
return 1
if not cfg.unit_tests and not cfg.functional_tests:
cfg.unit_tests = True
@@ -564,11 +568,11 @@ def main(argv):
success = True
if cfg.list_files:
baselen = len(cfg.basedir) + 1
- print "\n".join([fn[baselen:] for fn in test_files])
+ print("\n".join([fn[baselen:] for fn in test_files]))
if cfg.list_tests:
- print "\n".join([test.id() for test in test_cases])
+ print("\n".join([test.id() for test in test_cases]))
if cfg.list_hooks:
- print "\n".join([str(hook) for hook in test_hooks])
+ print("\n".join([str(hook) for hook in test_hooks]))
if cfg.run_tests:
runner = CustomTestRunner(cfg, test_hooks)
suite = unittest.TestSuite()