Exemplo n.º 1
0
    def test_traverse_site_no_manager(self):
        test = self

        class Context(object):
            def __getattribute__(self, name):
                test.assertEqual(name, 'getSiteManager')
                return None

        context = Context()
        with self.assertRaises(LocationError) as ctx:
            namespace.etc(context, None).traverse('site', ())

        ex = ctx.exception
        self.assertEqual((context, 'site'), ex.args)
Exemplo n.º 2
0
    def test_traverse_site_lookup_error(self):
        class Context(object):
            called = False

            def getSiteManager(self):
                self.called = True
                from zope.component import ComponentLookupError
                raise ComponentLookupError()

        context = Context()
        with self.assertRaises(LocationError) as ctx:
            namespace.etc(context, None).traverse('site', ())

        ex = ctx.exception
        self.assertEqual((context, 'site'), ex.args)
        self.assertTrue(context.called)
Exemplo n.º 3
0
    def test_traverse_utility(self):
        from zope.traversing.interfaces import IEtcNamespace
        component.provideUtility(self,
                                 provides=IEtcNamespace,
                                 name='my etc name')

        result = namespace.etc(None, None).traverse('my etc name', ())
        self.assertIs(result, self)
Exemplo n.º 4
0
    def test_traverse_non_site_name(self):
        with self.assertRaises(LocationError) as ctx:
            namespace.etc(None, None).traverse('foobar', ())

        ex = ctx.exception
        self.assertEqual((None, 'foobar'), ex.args)