diff options
Diffstat (limited to 'repoze/bfg/tests')
| -rw-r--r-- | repoze/bfg/tests/test_traversal.py | 38 |
1 files changed, 22 insertions, 16 deletions
diff --git a/repoze/bfg/tests/test_traversal.py b/repoze/bfg/tests/test_traversal.py index 18e9a9f18..3354dcce1 100644 --- a/repoze/bfg/tests/test_traversal.py +++ b/repoze/bfg/tests/test_traversal.py @@ -173,6 +173,28 @@ class ModelGraphTraverserTests(unittest.TestCase): self.assertEqual(vroot, bar) self.assertEqual(vroot_path, [u'foo', u'bar']) + def test_non_utf8_path_segment_unicode_path_segments_fails(self): + foo = DummyContext() + root = DummyContext(foo) + policy = self._makeOne(root) + segment = unicode('LaPe\xc3\xb1a', 'utf-8').encode('utf-16') + environ = self._getEnviron(PATH_INFO='/%s' % segment) + self.assertRaises(TypeError, policy, environ) + + def test_non_utf8_path_segment_settings_unicode_path_segments_fails(self): + foo = DummyContext() + root = DummyContext(foo) + policy = self._makeOne(root) + segment = unicode('LaPe\xc3\xb1a', 'utf-8').encode('utf-16') + environ = self._getEnviron(PATH_INFO='/%s' % segment) + self.assertRaises(TypeError, policy, environ) + +class WrappingModelGraphTraverserTests(ModelGraphTraverserTests): + + def _getTargetClass(self): + from repoze.bfg.traversal import WrappingModelGraphTraverser + return WrappingModelGraphTraverser + def test_call_with_ILocation_root_proxies(self): baz = DummyContext() bar = DummyContext(baz) @@ -240,22 +262,6 @@ class ModelGraphTraverserTests(unittest.TestCase): self.assertEqual(vroot, root) self.assertEqual(vroot_path, []) - def test_non_utf8_path_segment_unicode_path_segments_fails(self): - foo = DummyContext() - root = DummyContext(foo) - policy = self._makeOne(root) - segment = unicode('LaPe\xc3\xb1a', 'utf-8').encode('utf-16') - environ = self._getEnviron(PATH_INFO='/%s' % segment) - self.assertRaises(TypeError, policy, environ) - - def test_non_utf8_path_segment_settings_unicode_path_segments_fails(self): - foo = DummyContext() - root = DummyContext(foo) - policy = self._makeOne(root) - segment = unicode('LaPe\xc3\xb1a', 'utf-8').encode('utf-16') - environ = self._getEnviron(PATH_INFO='/%s' % segment) - self.assertRaises(TypeError, policy, environ) - class FindInterfaceTests(unittest.TestCase): def _callFUT(self, context, iface): from repoze.bfg.traversal import find_interface |
