]> granicus.if.org Git - python/commitdiff
run_suite(): If testclass is not available, provide an even more general
authorFred Drake <fdrake@acm.org>
Thu, 4 Oct 2001 19:46:07 +0000 (19:46 +0000)
committerFred Drake <fdrake@acm.org>
Thu, 4 Oct 2001 19:46:07 +0000 (19:46 +0000)
               error message.
run_unittest():  Provide the testclass to run_suite() so it can construct
                 the error message.
This closes SF bug #467763.

Lib/test/test_support.py

index e1923a67fdf8f0bd8c892782e06cad647e18b851..bbae1be5fff09cbe477931daa40142d548897b0b 100644 (file)
@@ -148,7 +148,7 @@ class BasicTestRunner:
         return result
 
 
-def run_suite(suite):
+def run_suite(suite, testclass=None):
     """Run tests from a unittest.TestSuite-derived class."""
     if verbose:
         runner = unittest.TextTestRunner(sys.stdout, verbosity=2)
@@ -162,14 +162,18 @@ def run_suite(suite):
         elif len(result.failures) == 1 and not result.errors:
             err = result.failures[0][1]
         else:
-            raise TestFailed("errors occurred in %s.%s"
-                             % (testclass.__module__, testclass.__name__))
+            if testclass is None:
+                msg = "errors occurred; run in verbose mode for details"
+            else:
+                msg = "errors occurred in %s.%s" \
+                      % (testclass.__module__, testclass.__name__)
+            raise TestFailed(msg)
         raise TestFailed(err)
 
 
 def run_unittest(testclass):
     """Run tests from a unittest.TestCase-derived class."""
-    run_suite(unittest.makeSuite(testclass))
+    run_suite(unittest.makeSuite(testclass), testclass)
 
 
 #=======================================================================