In
|
return super(MockedProgram, self).__exit__(*args, **kw) |
there is a
return statement in a
finally block, which would swallow any in-flight exception.
This means that if the try block raises AssertionError, this will not be raised (in contradiction to the function's docstring).
See also https://docs.python.org/3/tutorial/errors.html#defining-clean-up-actions.