Bert JW Regeer
2016-04-11 59428d50df0e9c4221fff3b46f205b9d573d1056
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.
2 files modified
25 ■■■■■ changed files
pyramid/tests/test_events.py 21 ●●●●● patch | view | raw | blame | history
pyramid/tests/test_router.py 4 ●●●● patch | view | raw | blame | history
pyramid/tests/test_events.py
@@ -124,6 +124,27 @@
        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()
pyramid/tests/test_router.py
@@ -591,6 +591,7 @@
    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 @@
        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 @@
        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)