summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/test/test_unittest.py4
-rw-r--r--Lib/unittest/loader.py6
-rw-r--r--Lib/unittest/main.py3
3 files changed, 5 insertions, 8 deletions
diff --git a/Lib/test/test_unittest.py b/Lib/test/test_unittest.py
index c8fc439..a88d75b 100644
--- a/Lib/test/test_unittest.py
+++ b/Lib/test/test_unittest.py
@@ -3991,13 +3991,15 @@ class TestDiscovery(TestCase):
program._do_discovery(['-p', 'fish'], Loader=Loader)
self.assertEqual(program.test, 'tests')
self.assertEqual(Loader.args, [('.', 'fish', None)])
+ self.assertFalse(program.failfast)
Loader.args = []
program = object.__new__(TestProgram)
- program._do_discovery(['-p', 'eggs', '-s', 'fish', '-v'], Loader=Loader)
+ program._do_discovery(['-p', 'eggs', '-s', 'fish', '-v', '-f'], Loader=Loader)
self.assertEqual(program.test, 'tests')
self.assertEqual(Loader.args, [('fish', 'eggs', None)])
self.assertEqual(program.verbosity, 2)
+ self.assertTrue(program.failfast)
class TestSetups(unittest.TestCase):
diff --git a/Lib/unittest/loader.py b/Lib/unittest/loader.py
index eea5c13..5d11b6e 100644
--- a/Lib/unittest/loader.py
+++ b/Lib/unittest/loader.py
@@ -19,11 +19,7 @@ VALID_MODULE_NAME = re.compile(r'[_a-z]\w*\.py$', re.IGNORECASE)
def _make_failed_import_test(name, suiteClass):
- message = 'Failed to import test module: %s' % name
- if hasattr(traceback, 'format_exc'):
- # Python 2.3 compatibility
- # format_exc returns two frames of discover.py as well
- message += '\n%s' % traceback.format_exc()
+ message = 'Failed to import test module: %s\n%s' % (name, traceback.format_exc())
return _make_failed_test('ModuleImportFailure', name, ImportError(message),
suiteClass)
diff --git a/Lib/unittest/main.py b/Lib/unittest/main.py
index 63fbd16..1db7978 100644
--- a/Lib/unittest/main.py
+++ b/Lib/unittest/main.py
@@ -159,10 +159,9 @@ class TestProgram(object):
for name, value in zip(('start', 'pattern', 'top'), args):
setattr(options, name, value)
+ self.failfast = options.failfast
if options.verbose:
self.verbosity = 2
- if options.failfast:
- self.failfast = True
start_dir = options.start
pattern = options.pattern