This is what I want to do but it fails passing None
to assertRaises
:
tests = [ (0, None), (1, None), (-1, TooFewException), (99, None), (100, TooManyException), ] for n, exc in tests: with self.assertRaises(exc): results = my_code(n) assert len(results) == n
Here’s a version of assertRaises
that will let you do that:
def assert_raises(self, exception: Type[Exception]): if exception: return self.assertRaises(exception) return contextlib.nullcontext()