diff options
| author | Michael Merickel <michael@merickel.org> | 2018-11-14 21:26:39 -0600 |
|---|---|---|
| committer | Michael Merickel <michael@merickel.org> | 2018-11-14 21:27:08 -0600 |
| commit | 78dcc6dff88829831ead187804ac9233eafab52e (patch) | |
| tree | 9a75d95c7cd31c68e8df55b495d0ed7d0d9d2449 /tests | |
| parent | a705f56c3ebf34f25ab567d85b7d5b421983aa4a (diff) | |
| download | pyramid-78dcc6dff88829831ead187804ac9233eafab52e.tar.gz pyramid-78dcc6dff88829831ead187804ac9233eafab52e.tar.bz2 pyramid-78dcc6dff88829831ead187804ac9233eafab52e.zip | |
remove several places supporting bytes for py2
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/test_httpexceptions.py | 6 | ||||
| -rw-r--r-- | tests/test_renderers.py | 2 | ||||
| -rw-r--r-- | tests/test_urldispatch.py | 17 | ||||
| -rw-r--r-- | tests/test_util.py | 52 |
4 files changed, 76 insertions, 1 deletions
diff --git a/tests/test_httpexceptions.py b/tests/test_httpexceptions.py index 195496e2e..48c4a22f3 100644 --- a/tests/test_httpexceptions.py +++ b/tests/test_httpexceptions.py @@ -67,6 +67,12 @@ class Test__no_escape(unittest.TestCase): def test_not_basestring(self): self.assertEqual(self._callFUT(42), '42') + def test_bytes(self): + self.assertEqual( + self._callFUT(b'/La Pe\xc3\xb1a/{x}'), + b'/La Pe\xc3\xb1a/{x}'.decode('utf-8'), + ) + def test_unicode(self): class DummyUnicodeObject(object): def __unicode__(self): diff --git a/tests/test_renderers.py b/tests/test_renderers.py index 0eacfa996..0e9f99d15 100644 --- a/tests/test_renderers.py +++ b/tests/test_renderers.py @@ -774,7 +774,7 @@ class DummyResponse: body = b'' # compat for renderer that will set unicode on py3 - def _set_text(self, val): # pragma: no cover + def _set_text(self, val): self.body = val.encode('utf8') text = property(fset=_set_text) diff --git a/tests/test_urldispatch.py b/tests/test_urldispatch.py index 9296a50e1..a74731730 100644 --- a/tests/test_urldispatch.py +++ b/tests/test_urldispatch.py @@ -140,6 +140,23 @@ class RoutesMapperTests(unittest.TestCase): request.registry = get_current_registry() self.assertRaises(URLDecodeError, mapper, request) + def test___call__pathinfo_KeyError(self): + from pyramid.threadlocal import get_current_registry + + class DummyRequest: + @property + def path_info(self): + # if the PATH_INFO is missing from the environ + raise KeyError + + mapper = self._makeOne() + mapper.connect('root', '') + request = DummyRequest() + request.registry = get_current_registry() + result = mapper(request) + self.assertEqual(result['route'], mapper.routes['root']) + self.assertEqual(result['match'], {}) + def test___call__route_matches(self): mapper = self._makeOne() mapper.connect('foo', 'archives/:action/:article') 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) |
