| | |
| | | msg = e.args[0] |
| | | self.assertTrue( |
| | | msg.startswith( |
| | | 'Could not convert return value of the view callable object ' |
| | | '<tests.test_viewderivers.' |
| | | 'Could not convert return value of the view callable ' |
| | | 'object <tests.test_viewderivers.' |
| | | ) |
| | | ) |
| | | self.assertTrue( |
| | | msg.endswith( |
| | | '> into a response object. The value returned was None. You ' |
| | | 'may have forgotten to return a value from the view callable.' |
| | | '> into a response object. The value returned was None. ' |
| | | 'You may have forgotten to return a value from the view ' |
| | | 'callable.' |
| | | ) |
| | | ) |
| | | else: # pragma: no cover |
| | |
| | | def view(request): |
| | | return r |
| | | |
| | | renderer = object() |
| | | result = self.config.derive_view(view) |
| | | self.assertFalse(result is view) |
| | | response = result(None, None) |
| | |
| | | from pyramid.interfaces import IAuthorizationPolicy |
| | | from pyramid.httpexceptions import HTTPForbidden |
| | | |
| | | def myview(request): |
| | | def myview(request): # pragma: no cover |
| | | pass |
| | | |
| | | self.config.registry.settings = {} |
| | |
| | | def view(request): |
| | | raise ValueError |
| | | |
| | | def excview(request): |
| | | def excview(request): # pragma: no cover |
| | | pass |
| | | |
| | | self._registerSecurityPolicy(False) |
| | |
| | | def test_predicate_mismatch_view_has_name(self): |
| | | from pyramid.exceptions import PredicateMismatch |
| | | |
| | | def myview(request): |
| | | def myview(request): # pragma: no cover |
| | | pass |
| | | |
| | | def predicate1(context, request): |
| | |
| | | def test_predicate_mismatch_exception_has_text_in_detail(self): |
| | | from pyramid.exceptions import PredicateMismatch |
| | | |
| | | def myview(request): |
| | | def myview(request): # pragma: no cover |
| | | pass |
| | | |
| | | def predicate1(context, request): |
| | |
| | | |
| | | return wrapped |
| | | |
| | | def view(context, request): |
| | | def view(context, request): # pragma: no cover |
| | | return 'NOTOK' |
| | | |
| | | result = self.config._derive_view(view, mapper=mapper) |
| | |
| | | |
| | | return inner |
| | | |
| | | def view(context, request): |
| | | def view(context, request): # pragma: no cover |
| | | return 'NOTOK' |
| | | |
| | | view.__view_mapper__ = mapper |
| | |
| | | |
| | | self.config.set_view_mapper(mapper) |
| | | |
| | | def view(context, request): |
| | | def view(context, request): # pragma: no cover |
| | | return 'NOTOK' |
| | | |
| | | result = self.config.derive_view(view) |
| | |
| | | self.assertEqual(result(None, None), response) |
| | | |
| | | def test_attr_wrapped_view_branching_default_phash(self): |
| | | from pyramid.config.util import DEFAULT_PHASH |
| | | from pyramid.config.predicates import DEFAULT_PHASH |
| | | |
| | | def view(context, request): |
| | | def view(context, request): # pragma: no cover |
| | | pass |
| | | |
| | | result = self.config._derive_view(view, phash=DEFAULT_PHASH) |
| | | self.assertEqual(result.__wraps__, view) |
| | | |
| | | def test_attr_wrapped_view_branching_nondefault_phash(self): |
| | | def view(context, request): |
| | | def view(context, request): # pragma: no cover |
| | | pass |
| | | |
| | | result = self.config._derive_view(view, phash='nondefault') |
| | |
| | | self.assertFalse('Cache-Control' in headers) |
| | | |
| | | def test_http_cached_view_bad_tuple(self): |
| | | def view(request): |
| | | def view(request): # pragma: no cover |
| | | pass |
| | | |
| | | self.assertRaises( |
| | |
| | | def test_csrf_view_fails_with_bad_POST_header(self): |
| | | from pyramid.exceptions import BadCSRFToken |
| | | |
| | | def inner_view(request): |
| | | def inner_view(request): # pragma: no cover |
| | | pass |
| | | |
| | | request = self._makeRequest() |
| | |
| | | def test_csrf_view_fails_with_bad_POST_token(self): |
| | | from pyramid.exceptions import BadCSRFToken |
| | | |
| | | def inner_view(request): |
| | | def inner_view(request): # pragma: no cover |
| | | pass |
| | | |
| | | request = self._makeRequest() |
| | |
| | | def test_csrf_view_fails_on_bad_PUT_header(self): |
| | | from pyramid.exceptions import BadCSRFToken |
| | | |
| | | def inner_view(request): |
| | | def inner_view(request): # pragma: no cover |
| | | pass |
| | | |
| | | request = self._makeRequest() |
| | |
| | | def test_csrf_view_fails_on_bad_referrer(self): |
| | | from pyramid.exceptions import BadCSRFOrigin |
| | | |
| | | def inner_view(request): |
| | | def inner_view(request): # pragma: no cover |
| | | pass |
| | | |
| | | request = self._makeRequest() |
| | |
| | | def test_csrf_view_fails_on_bad_origin(self): |
| | | from pyramid.exceptions import BadCSRFOrigin |
| | | |
| | | def inner_view(request): |
| | | def inner_view(request): # pragma: no cover |
| | | pass |
| | | |
| | | request = self._makeRequest() |
| | |
| | | def test_csrf_view_enabled_by_default(self): |
| | | from pyramid.exceptions import BadCSRFToken |
| | | |
| | | def inner_view(request): |
| | | def inner_view(request): # pragma: no cover |
| | | pass |
| | | |
| | | request = self._makeRequest() |
| | |
| | | |
| | | from pyramid.exceptions import BadCSRFToken |
| | | |
| | | def inner_view(request): |
| | | def inner_view(request): # pragma: no cover |
| | | pass |
| | | |
| | | request = self._makeRequest() |
| | |
| | | def view(request): |
| | | raise ValueError |
| | | |
| | | def excview(request): |
| | | def excview(request): # pragma: no cover |
| | | pass |
| | | |
| | | self.config.set_default_csrf_options(require_csrf=True) |
| | |
| | | self.assertFalse(response.deriv) |
| | | self.config.add_view_deriver(deriv, 'test_deriv') |
| | | |
| | | result = self.config._derive_view(view) |
| | | result = self.config._derive_view(view) # noqa: F841 |
| | | self.assertTrue(response.deriv) |
| | | |
| | | def test_override_deriver(self): |
| | |
| | | flags.clear() |
| | | view2 = AView() |
| | | self.config.add_view_deriver(deriv2, 'test_deriv') |
| | | result = self.config._derive_view(view2) |
| | | result = self.config._derive_view(view2) # noqa: F841 |
| | | self.assertFalse(flags.get('deriv1')) |
| | | self.assertTrue(flags.get('deriv2')) |
| | | |
| | |
| | | self.config.add_view_deriver( |
| | | deriv1, name='mapped_view', under='rendered_view', over=VIEW |
| | | ) |
| | | result = self.config._derive_view(view) |
| | | result = self.config._derive_view(view) # noqa: F841 |
| | | self.assertTrue(flags.get('deriv1')) |
| | | |
| | | def test_add_multi_derivers_ordered(self): |
| | |
| | | self.config.add_view_deriver(deriv1, 'deriv1') |
| | | self.config.add_view_deriver(deriv2, 'deriv2', INGRESS, 'deriv1') |
| | | self.config.add_view_deriver(deriv3, 'deriv3', 'deriv2', 'deriv1') |
| | | result = self.config._derive_view(view) |
| | | result = self.config._derive_view(view) # noqa: F841 |
| | | self.assertEqual(response.deriv, ['deriv1', 'deriv3', 'deriv2']) |
| | | |
| | | def test_add_deriver_without_name(self): |
| | | from pyramid.interfaces import IViewDerivers |
| | | |
| | | def deriv1(view, info): |
| | | def deriv1(view, info): # pragma: no cover |
| | | pass |
| | | |
| | | self.config.add_view_deriver(deriv1) |
| | |
| | | from pyramid.exceptions import ConfigurationError |
| | | from pyramid.viewderivers import INGRESS |
| | | |
| | | def deriv1(view, info): |
| | | def deriv1(view, info): # pragma: no cover |
| | | pass |
| | | |
| | | self.assertRaises( |
| | |
| | | from pyramid.exceptions import ConfigurationError |
| | | from pyramid.viewderivers import INGRESS |
| | | |
| | | def deriv1(view, info): |
| | | def deriv1(view, info): # pragma: no cover |
| | | pass |
| | | |
| | | try: |
| | |
| | | from pyramid.exceptions import ConfigurationError |
| | | from pyramid.viewderivers import VIEW |
| | | |
| | | def deriv1(view, info): |
| | | def deriv1(view, info): # pragma: no cover |
| | | pass |
| | | |
| | | try: |
| | |
| | | def test_add_deriver_enforces_mapped_view_is_last(self): |
| | | from pyramid.exceptions import ConfigurationError |
| | | |
| | | def deriv1(view, info): |
| | | def deriv1(view, info): # pragma: no cover |
| | | pass |
| | | |
| | | try: |
| | |
| | | def test_unexpected_view_options(self): |
| | | from pyramid.exceptions import ConfigurationError |
| | | |
| | | def deriv1(view, info): |
| | | def deriv1(view, info): # pragma: no cover |
| | | pass |
| | | |
| | | self.config.add_view_deriver(deriv1, 'deriv1') |