diff options
| author | Lorenzo M. Catucci <lorenzo@sancho.ccd.uniroma2.it> | 2012-06-08 12:31:50 +0200 |
|---|---|---|
| committer | Lorenzo M. Catucci <lorenzo@sancho.ccd.uniroma2.it> | 2012-06-08 12:31:50 +0200 |
| commit | 34f00aede8634810164baaac0fd9214b683ff181 (patch) | |
| tree | 3949ee3d53f8f8f8394576c90a67482bb254752a | |
| parent | 566a2a641a03b2d4bec6b19e8d20148dbc2769b4 (diff) | |
| download | pyramid-34f00aede8634810164baaac0fd9214b683ff181.tar.gz pyramid-34f00aede8634810164baaac0fd9214b683ff181.tar.bz2 pyramid-34f00aede8634810164baaac0fd9214b683ff181.zip | |
RFC 2616 sec. 3.7 case insensitive match test
Since "... The type, subtype, and parameter attribute names are case-
insensitive..." the type and subtype in the accept parameter in add_view
should be treated in a case insensitive way.
| -rw-r--r-- | pyramid/tests/test_config/test_views.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/pyramid/tests/test_config/test_views.py b/pyramid/tests/test_config/test_views.py index 9b46f83c9..4e1be2190 100644 --- a/pyramid/tests/test_config/test_views.py +++ b/pyramid/tests/test_config/test_views.py @@ -645,6 +645,26 @@ class TestViewsConfigurationMixin(unittest.TestCase): request.accept = DummyAccept('text/html', 'text/html') self.assertEqual(wrapper(None, request), 'OK2') + def test_add_view_mixed_case_replaces_existing_view(self): + from pyramid.renderers import null_renderer + def view(context, request): return 'OK' + def view2(context, request): return 'OK2' + def view3(context, request): return 'OK3' + def get_val(obj, key): + return obj.get(key) + config = self._makeOne(autocommit=True) + config.add_view(view=view, renderer=null_renderer) + config.add_view(view=view2, accept='text/html', renderer=null_renderer) + config.add_view(view=view3, accept='text/HTML', renderer=null_renderer) + wrapper = self._getViewCallable(config) + self.assertTrue(IMultiView.providedBy(wrapper)) + self.assertEqual(len(wrapper.media_views.items()),1) + self.assertFalse(wrapper.media_views.has_key('text/HTML')) + self.assertEqual(wrapper(None, None), 'OK') + request = DummyRequest() + request.accept = DummyAccept('text/html', 'text/html') + self.assertEqual(wrapper(None, request), 'OK3') + def test_add_views_with_accept_multiview_replaces_existing(self): from pyramid.renderers import null_renderer def view(context, request): return 'OK' |
