Esempio n. 1
0
    def test_context_lookup(self):
        from pyramid_layout.config import add_panel
        from pyramid_layout.layout import LayoutManager
        from pyramid.config import Configurator
        from pyramid.testing import DummyRequest

        request = DummyRequest()
        config = Configurator()
        request.config = config
        request.registry = config.registry

        def panel_int(context, request):
            return 'panel int %s' % context
        def panel_str(context, request):
            return 'panel str %s' % context
        def panel_str_noname(context, request):
            return 'panel str noname %s' % context

        add_panel(config, panel_int, name='howdy', context=int)

        add_panel(config, panel_str, name='howdy', context=str)

        add_panel(config, panel_str_noname)
        
        config.commit()

        self.assertEqual(LayoutManager(1, request).render_panel('howdy'), 'panel int 1')
        self.assertEqual(LayoutManager(1, request).render_panel('howdy', context='1'), 'panel str 1')
        self.assertEqual(LayoutManager('2', request).render_panel('howdy'), 'panel str 2')
        self.assertEqual(LayoutManager('2', request).render_panel('howdy', context=2), 'panel int 2')
        self.assertEqual(LayoutManager('2', request).render_panel(), 'panel str noname 2')
Esempio n. 2
0
 def call_fut(self, config, panel, **kw):
     from pyramid_layout.config import add_panel
     return add_panel(config, panel, **kw)