summaryrefslogtreecommitdiff
path: root/tests/test_util.py
diff options
context:
space:
mode:
authorMichael Merickel <michael@merickel.org>2018-11-14 21:26:39 -0600
committerMichael Merickel <michael@merickel.org>2018-11-14 21:27:08 -0600
commit78dcc6dff88829831ead187804ac9233eafab52e (patch)
tree9a75d95c7cd31c68e8df55b495d0ed7d0d9d2449 /tests/test_util.py
parenta705f56c3ebf34f25ab567d85b7d5b421983aa4a (diff)
downloadpyramid-78dcc6dff88829831ead187804ac9233eafab52e.tar.gz
pyramid-78dcc6dff88829831ead187804ac9233eafab52e.tar.bz2
pyramid-78dcc6dff88829831ead187804ac9233eafab52e.zip
remove several places supporting bytes for py2
Diffstat (limited to 'tests/test_util.py')
-rw-r--r--tests/test_util.py52
1 files changed, 52 insertions, 0 deletions
diff --git a/tests/test_util.py b/tests/test_util.py
index 676290676..d6d1d1502 100644
--- a/tests/test_util.py
+++ b/tests/test_util.py
@@ -1,3 +1,4 @@
+import sys
import unittest
from pyramid.compat import text_, bytes_
@@ -1246,3 +1247,54 @@ class TestUnboundMethods(unittest.TestCase):
return 'OK'
self.assertFalse(self._callFUT(func))
+
+
+class TestReraise(unittest.TestCase):
+ def _callFUT(self, *args):
+ from pyramid.util import reraise
+
+ return reraise(*args)
+
+ def test_it(self):
+ # tests cribbed from six.py
+ def get_next(tb):
+ return tb.tb_next.tb_next.tb_next
+
+ e = Exception('blah')
+ try:
+ raise e
+ except Exception:
+ tp, val, tb = sys.exc_info()
+
+ try:
+ self._callFUT(tp, val, tb)
+ except Exception:
+ tp2, val2, tb2 = sys.exc_info()
+ self.assertIs(tp2, Exception)
+ self.assertIs(val2, e)
+ self.assertIs(get_next(tb2), tb)
+
+ try:
+ self._callFUT(tp, val)
+ except Exception:
+ tp2, val2, tb2 = sys.exc_info()
+ self.assertIs(tp2, Exception)
+ self.assertIs(val2, e)
+ self.assertIsNot(get_next(tb2), tb)
+
+ try:
+ self._callFUT(tp, val, tb2)
+ except Exception:
+ tp2, val2, tb3 = sys.exc_info()
+ self.assertIs(tp2, Exception)
+ self.assertIs(val2, e)
+ self.assertIs(get_next(tb3), tb2)
+
+ try:
+ self._callFUT(tp, None, tb)
+ except Exception:
+ tp2, val2, tb2 = sys.exc_info()
+ self.assertIs(tp2, Exception)
+ self.assertIsNot(val2, val)
+ self.assertIsInstance(val2, Exception)
+ self.assertIs(get_next(tb2), tb)