Merged revisions 74524,74556 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

........
  r74524 | gregory.p.smith | 2009-08-20 04:39:38 -0500 (Thu, 20 Aug 2009) | 2 lines

  Add weakref support to the thread.lock type.
........
  r74556 | kristjan.jonsson | 2009-08-27 17:20:21 -0500 (Thu, 27 Aug 2009) | 2 lines

  issue 6275
  Add an "exc_value" attribute to the _AssertRaisesContext context manager in the unittest package.  This allows further tests on the exception that was raised after the context manager exits.
........
This commit is contained in:
Benjamin Peterson 2009-10-04 20:07:34 +00:00
parent 2e30440153
commit 9a779ea98e
5 changed files with 30 additions and 2 deletions

View file

@ -2834,6 +2834,21 @@ test case
self.assertRaisesRegexp, Exception,
re.compile('^Expected$'), Stub)
def testAssertRaisesExcValue(self):
class ExceptionMock(Exception):
pass
def Stub(foo):
raise ExceptionMock(foo)
v = "particular value"
ctx = self.assertRaises(ExceptionMock)
with ctx:
Stub(v)
e = ctx.exc_value
self.assertTrue(isinstance(e, ExceptionMock))
self.assertEqual(e.args[0], v)
def testSynonymAssertMethodNames(self):
"""Test undocumented method name synonyms.

View file

@ -116,6 +116,7 @@ class _AssertRaisesContext(object):
if not issubclass(exc_type, self.expected):
# let unexpected exceptions pass through
return False
self.exc_value = exc_value #store for later retrieval
if self.expected_regex is None:
return True