From 352def0ed24b8736519e3db9050171d2afd9540f Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Wed, 27 Mar 2013 20:11:55 +0200 Subject: #17329: document unittest.SkipTest. Initial patch by Zachary Ware. --- Doc/library/unittest.rst | 13 ++++++++++--- Lib/unittest/case.py | 2 +- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/Doc/library/unittest.rst b/Doc/library/unittest.rst index c3170c0..abdef98 100644 --- a/Doc/library/unittest.rst +++ b/Doc/library/unittest.rst @@ -638,7 +638,7 @@ the test unless the passed object has a certain attribute:: def skipUnlessHasattr(obj, attr): if hasattr(obj, attr): return lambda func: func - return unittest.skip("{0!r} doesn't have {1!r}".format(obj, attr)) + return unittest.skip("{!r} doesn't have {!r}".format(obj, attr)) The following decorators implement test skipping and expected failures: @@ -660,6 +660,13 @@ The following decorators implement test skipping and expected failures: Mark the test as an expected failure. If the test fails when run, the test is not counted as a failure. +.. exception:: SkipTest(reason) + + This exception is raised to skip a test. + + Usually you can use :meth:`TestCase.skipTest` or one of the skipping + decorators instead of raising this directly. + Skipped tests will not have :meth:`setUp` or :meth:`tearDown` run around them. Skipped classes will not have :meth:`setUpClass` or :meth:`tearDownClass` run. @@ -1956,7 +1963,7 @@ then you must call up to them yourself. The implementations in If an exception is raised during a ``setUpClass`` then the tests in the class are not run and the ``tearDownClass`` is not run. Skipped classes will not have ``setUpClass`` or ``tearDownClass`` run. If the exception is a -``SkipTest`` exception then the class will be reported as having been skipped +:exc:`SkipTest` exception then the class will be reported as having been skipped instead of as an error. @@ -1973,7 +1980,7 @@ These should be implemented as functions:: If an exception is raised in a ``setUpModule`` then none of the tests in the module will be run and the ``tearDownModule`` will not be run. If the exception is a -``SkipTest`` exception then the module will be reported as having been skipped +:exc:`SkipTest` exception then the module will be reported as having been skipped instead of as an error. diff --git a/Lib/unittest/case.py b/Lib/unittest/case.py index 6257936..b408464 100644 --- a/Lib/unittest/case.py +++ b/Lib/unittest/case.py @@ -26,7 +26,7 @@ class SkipTest(Exception): """ Raise this exception in a test to skip it. - Usually you can use TestResult.skip() or one of the skipping decorators + Usually you can use TestCase.skipTest() or one of the skipping decorators instead of raising this directly. """ pass -- cgit v0.12