diff options
author | Gustavo Niemeyer <gustavo@niemeyer.net> | 2009-02-13 12:10:28 +0000 |
---|---|---|
committer | Gustavo Niemeyer <gustavo@niemeyer.net> | 2009-02-13 12:10:28 +0000 |
commit | a9b44545edaae14ea4656181a93a98cfaad8310c (patch) | |
tree | 26db48abcb6c12aece30c3fef53c6edc92e37b29 /mocker.py | |
parent | 8a4227cfcc32fed041462ebf6031d722bb0c39a1 (diff) | |
parent | 44c1f801a3068647673c7e827827bab7cc72264c (diff) | |
download | mocker-a9b44545edaae14ea4656181a93a98cfaad8310c.tar.gz |
Merged 328990-mocker-hides-exception branch from Duncan McGreggor. This
ensures that the raised AttributeError exception on a patched object
actually exposes the real problem rather than an internal Mocker
exception.
Diffstat (limited to 'mocker.py')
-rw-r--r-- | mocker.py | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -2020,6 +2020,7 @@ class Patcher(Task): try: return unpatched(*action.args, **action.kwargs) except AttributeError: + type, value, traceback = sys.exc_info() if action.kind == "getattr": # The normal behavior of Python is to try __getattribute__, # and if it raises AttributeError, try __getattr__. We've @@ -2031,7 +2032,7 @@ class Patcher(Task): pass else: return __getattr__(*action.args, **action.kwargs) - raise + raise type, value, traceback class PatchedMethod(object): |