diff options
Diffstat (limited to 'test/base/test_utils.py')
-rw-r--r-- | test/base/test_utils.py | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/test/base/test_utils.py b/test/base/test_utils.py index 48e464a01..183e157e5 100644 --- a/test/base/test_utils.py +++ b/test/base/test_utils.py @@ -3,7 +3,6 @@ import copy import datetime import inspect -import sys from sqlalchemy import exc from sqlalchemy import sql @@ -2899,20 +2898,29 @@ class ReraiseTest(fixtures.TestBase): except MyException as err: is_(err.__cause__, None) - def test_reraise_disallow_same_cause(self): + def test_raise_from_cause_legacy(self): class MyException(Exception): pass + class MyOtherException(Exception): + pass + + me = MyException("exc on") + def go(): try: - raise MyException("exc one") - except Exception as err: - type_, value, tb = sys.exc_info() - util.reraise(type_, err, tb, value) + raise me + except Exception: + util.raise_from_cause(MyOtherException("exc two")) - assert_raises_message(AssertionError, "Same cause emitted", go) + try: + go() + assert False + except MyOtherException as moe: + if testing.requires.python3.enabled: + is_(moe.__cause__, me) - def test_raise_from_cause(self): + def test_raise_from(self): class MyException(Exception): pass @@ -2924,8 +2932,8 @@ class ReraiseTest(fixtures.TestBase): def go(): try: raise me - except Exception: - util.raise_from_cause(MyOtherException("exc two")) + except Exception as err: + util.raise_(MyOtherException("exc two"), from_=err) try: go() |