From 7a130522dce0ba1c3bdd80b44eebf7f3132e30e5 Mon Sep 17 00:00:00 2001 From: Kipkemoi Kiptum Date: Wed, 27 Jan 2021 13:47:14 +0300 Subject: [PATCH] Added unittest self.assertRaises() in context manager. --- source/unittest/index.rst | 4 +++- source/unittest/unittest_exception.py | 4 ++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/source/unittest/index.rst b/source/unittest/index.rst index 5b6d8174..0b0ebe94 100644 --- a/source/unittest/index.rst +++ b/source/unittest/index.rst @@ -511,7 +511,8 @@ exception in the test. Compare these two tests: :start-after: #end_pymotw_header The results for both are the same, but the second test using -``assertRaises()`` is more succinct. +``assertRaises()`` is more succinct. ``assertRaises()`` can also be +run as a context manager. .. {{{cog .. cog.out(run_script(cog.inFile, '-m unittest -v unittest_exception.py')) @@ -522,6 +523,7 @@ The results for both are the same, but the second test using $ python3 -m unittest -v unittest_exception.py testAssertRaises (unittest_exception.ExceptionTest) ... ok + testAssertRaisesContext (unittest_exception.ExceptionTest) ... ok testTrapLocally (unittest_exception.ExceptionTest) ... ok ---------------------------------------------------------------- diff --git a/source/unittest/unittest_exception.py b/source/unittest/unittest_exception.py index 0fd8d4bf..baa56983 100644 --- a/source/unittest/unittest_exception.py +++ b/source/unittest/unittest_exception.py @@ -27,3 +27,7 @@ def testAssertRaises(self): 'a', b='c', ) + + def testAssertRaisesContext(self): + with self.assertRaises(ValueError): + raises_error('a', b='c')