New submission from Danilo Bargen <gezuru at gmail.com>:
Most assert statements of the unittest module provide both an assert statement as well as its inverse, like "assertIn" and "assertNotIn". There is apparently no such thing for exceptions.
I can do the following:
> with self.assertRaises(SomeException):
> do_something()
But not:
> with self.assertRaisesNot(SomeException):
> do_something()
I don't want to simply execute the code and hope that it doesn't raise an exception, because if it does, the test fails with an "error" status instead of a "failed" status.
A possible workaround is the following code:
> try:
> do_something()
> except SomeException:
> self.fail()
But that is not that expressive as an assert statement.
A naming alternative would be "assertDoesNotRaise".
In case this enhancement gets accepted, there should also be an inverse of "assertRaisesRegexp".
----------
components: Tests
messages: 156750
nosy: gwrtheyrn
priority: normal
severity: normal
status: open
title: unittest module: provide inverse of "assertRaises"
type: enhancement
versions: Python 2.7
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue14403>
_______________________________________