summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBert JW Regeer <bertjw@regeer.org>2016-04-10 22:32:29 -0600
committerBert JW Regeer <bertjw@regeer.org>2016-04-10 22:32:29 -0600
commit59428d50df0e9c4221fff3b46f205b9d573d1056 (patch)
tree00278e8f488e5f56d02310bcfc8fe198f03cb90e
parent5b918737fb361584d820893fc82c6b898ae1fc69 (diff)
downloadpyramid-59428d50df0e9c4221fff3b46f205b9d573d1056.tar.gz
pyramid-59428d50df0e9c4221fff3b46f205b9d573d1056.tar.bz2
pyramid-59428d50df0e9c4221fff3b46f205b9d573d1056.zip
Add explicit tests for IBeforeTraversal/BeforeTraversal
Although the new code was already being covered by other tests, this adds some explicit testing to make sure it all works.
-rw-r--r--pyramid/tests/test_events.py21
-rw-r--r--pyramid/tests/test_router.py4
2 files changed, 25 insertions, 0 deletions
diff --git a/pyramid/tests/test_events.py b/pyramid/tests/test_events.py
index 2c72c07e8..eec395012 100644
--- a/pyramid/tests/test_events.py
+++ b/pyramid/tests/test_events.py
@@ -124,6 +124,27 @@ class AfterTraversalEventTests(ContextFoundEventTests):
from pyramid.interfaces import IAfterTraversal
verifyObject(IAfterTraversal, self._makeOne())
+class BeforeTraversalEventTests(unittest.TestCase):
+ def _getTargetClass(self):
+ from pyramid.events import BeforeTraversal
+ return BeforeTraversal
+
+ def _makeOne(self, request=None):
+ if request is None:
+ request = DummyRequest()
+ return self._getTargetClass()(request)
+
+ def test_class_conforms_to_IBeforeTraversal(self):
+ from zope.interface.verify import verifyClass
+ from pyramid.interfaces import IBeforeTraversal
+ verifyClass(IBeforeTraversal, self._getTargetClass())
+
+ def test_instance_conforms_to_IBeforeTraversal(self):
+ from zope.interface.verify import verifyObject
+ from pyramid.interfaces import IBeforeTraversal
+ verifyObject(IBeforeTraversal, self._makeOne())
+
+
class TestSubscriber(unittest.TestCase):
def setUp(self):
self.config = testing.setUp()
diff --git a/pyramid/tests/test_router.py b/pyramid/tests/test_router.py
index 1cdc4abaa..7aa42804c 100644
--- a/pyramid/tests/test_router.py
+++ b/pyramid/tests/test_router.py
@@ -591,6 +591,7 @@ class TestRouter(unittest.TestCase):
def test_call_eventsends(self):
from pyramid.interfaces import INewRequest
from pyramid.interfaces import INewResponse
+ from pyramid.interfaces import IBeforeTraversal
from pyramid.interfaces import IContextFound
from pyramid.interfaces import IViewClassifier
context = DummyContext()
@@ -601,6 +602,7 @@ class TestRouter(unittest.TestCase):
environ = self._makeEnviron()
self._registerView(view, '', IViewClassifier, None, None)
request_events = self._registerEventListener(INewRequest)
+ beforetraversal_events = self._registerEventListener(IBeforeTraversal)
context_found_events = self._registerEventListener(IContextFound)
response_events = self._registerEventListener(INewResponse)
router = self._makeOne()
@@ -608,6 +610,8 @@ class TestRouter(unittest.TestCase):
result = router(environ, start_response)
self.assertEqual(len(request_events), 1)
self.assertEqual(request_events[0].request.environ, environ)
+ self.assertEqual(len(beforetraversal_events), 1)
+ self.assertEqual(beforetraversal_events[0].request.environ, environ)
self.assertEqual(len(context_found_events), 1)
self.assertEqual(context_found_events[0].request.environ, environ)
self.assertEqual(context_found_events[0].request.context, context)