summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBert JW Regeer <bertjw@regeer.org>2015-10-16 00:04:16 -0600
committerBert JW Regeer <bertjw@regeer.org>2015-10-20 23:21:27 -0600
commit6b089d80cc0ec057a4d560ca3a303a67f3d5a3ef (patch)
tree6be10f3f1a10d8ffbd13828d0e11860bb7c763a6
parente31224c7f7706b960e3c048b987a39a94cbfaa49 (diff)
downloadpyramid-6b089d80cc0ec057a4d560ca3a303a67f3d5a3ef.tar.gz
pyramid-6b089d80cc0ec057a4d560ca3a303a67f3d5a3ef.tar.bz2
pyramid-6b089d80cc0ec057a4d560ca3a303a67f3d5a3ef.zip
Add tests for the value aspect of view_derivations
-rw-r--r--pyramid/tests/test_config/test_derivations.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/pyramid/tests/test_config/test_derivations.py b/pyramid/tests/test_config/test_derivations.py
index f33856e75..277aad662 100644
--- a/pyramid/tests/test_config/test_derivations.py
+++ b/pyramid/tests/test_config/test_derivations.py
@@ -1249,6 +1249,32 @@ class TestDerivationIntegration(unittest.TestCase):
self.assertEqual(wrapper(None, request), response)
self.assertEqual(['test1', 'test2'], response.deriv)
+ def test_view_options_default_or_not(self):
+ response = DummyResponse()
+ view = lambda *arg: response
+ response.deriv = []
+
+ def deriv1(view, value, **kw):
+ response.deriv.append(value)
+ response.deriv.append(kw['options'].get('deriv1', None))
+ return view
+
+ def deriv2(view, value, **kw):
+ response.deriv.append(value)
+ response.deriv.append(kw['options'].get('deriv2', None))
+ return view
+
+ self.config.add_view_derivation('deriv1', deriv1, default=None)
+ self.config.add_view_derivation('deriv2', deriv2, default='test2')
+ self.config.add_view(view, deriv1='test1')
+ self.config.commit()
+
+ wrapper = self._getViewCallable(self.config)
+ request = self._makeRequest(self.config)
+ request.method = 'GET'
+ self.assertEqual(wrapper(None, request), response)
+ self.assertEqual(['test1', 'test1', 'test2', None], response.deriv)
+
from zope.interface import implementer
from pyramid.interfaces import (