Example #1
0
    def test__find_view_traversal_multiview(self):
        from zope.interface import implementer
        from zope.interface import providedBy
        from pyramid.interfaces import IRequest
        from pyramid.interfaces import IViewClassifier
        from pyramid.interfaces import IMultiView
        from pyramid.traversal import DefaultRootFactory
        from pyramid.registry import Registry
        registry = Registry()

        @implementer(IMultiView)
        class View1(object):
            pass

        request = dummy.DummyRequest({'PATH_INFO': '/a'})
        root = DefaultRootFactory(request)
        root_iface = providedBy(root)
        view = View1()
        registry.registerAdapter(view, (IViewClassifier, IRequest, root_iface),
                                 IMultiView,
                                 name='a')
        self._register_mapper(registry, [])
        command = self._makeOne(registry=registry)
        result = command._find_view('/a', registry)
        self.assertEqual(result, view)
Example #2
0
 def test__find_multi_routes_none_match(self):
     command = self._makeOne()
     def factory(request): pass
     routes = [dummy.DummyRoute('a', '/a', factory=factory),
               dummy.DummyRoute('b', '/a', factory=factory)]
     mapper = dummy.DummyMapper(*routes)
     request = dummy.DummyRequest({'PATH_INFO':'/a'})
     result = command._find_multi_routes(mapper, request)
     self.assertEqual(result, [])
Example #3
0
 def test__find_multi_routes_all_match(self):
     command = self._makeOne()
     def factory(request): pass
     routes = [dummy.DummyRoute('a', '/a', factory=factory, matchdict={}),
               dummy.DummyRoute('b', '/a', factory=factory, matchdict={})]
     mapper = dummy.DummyMapper(*routes)
     request = dummy.DummyRequest({'PATH_INFO':'/a'})
     result = command._find_multi_routes(mapper, request)
     self.assertEqual(result, [{'match':{}, 'route':routes[0]},
                               {'match':{}, 'route':routes[1]}])