Exemple #1
0
    def test_create__kwarg(self):
        """
        Test passing a keyword argument.

        """
        context = ContextStack.create(foo='bar')
        self.assertEqual(context.get('foo'), 'bar')
Exemple #2
0
    def test_create__dictionary(self):
        """
        Test passing a dictionary.

        """
        context = ContextStack.create({'foo': 'bar'})
        self.assertEqual(context.get('foo'), 'bar')
Exemple #3
0
    def test_create__none(self):
        """
        Test passing None.

        """
        context = ContextStack.create({'foo': 'bar'}, None)
        self.assertEqual(context.get('foo'), 'bar')
Exemple #4
0
    def test_create__dictionary(self):
        """
        Test passing a dictionary.

        """
        context = ContextStack.create({'foo': 'bar'})
        self.assertEqual(context.get('foo'), 'bar')
Exemple #5
0
    def test_create__dictionary(self):
        """
        Test passing a dictionary.

        """
        context = ContextStack.create({"foo": "bar"})
        self.assertEqual(context.get("foo"), "bar")
Exemple #6
0
    def test_create__precedence_keyword(self):
        """
        Test precedence of keyword arguments.

        """
        context = ContextStack.create({'foo': 'bar'}, foo='buzz')
        self.assertEqual(context.get('foo'), 'buzz')
Exemple #7
0
    def test_create__precedence_keyword(self):
        """
        Test precedence of keyword arguments.

        """
        context = ContextStack.create({"foo": "bar"}, foo="buzz")
        self.assertEqual(context.get("foo"), "buzz")
Exemple #8
0
    def test_create__kwarg(self):
        """
        Test passing a keyword argument.

        """
        context = ContextStack.create(foo="bar")
        self.assertEqual(context.get("foo"), "bar")
Exemple #9
0
    def test_create__precedence_positional(self):
        """
        Test precedence of positional arguments.

        """
        context = ContextStack.create({"foo": "bar"}, {"foo": "buzz"})
        self.assertEqual(context.get("foo"), "buzz")
Exemple #10
0
    def test_create__precedence_positional(self):
        """
        Test precedence of positional arguments.

        """
        context = ContextStack.create({'foo': 'bar'}, {'foo': 'buzz'})
        self.assertEqual(context.get('foo'), 'buzz')
Exemple #11
0
    def test_create__none(self):
        """
        Test passing None.

        """
        context = ContextStack.create({"foo": "bar"}, None)
        self.assertEqual(context.get("foo"), "bar")
Exemple #12
0
    def test_create__none(self):
        """
        Test passing None.

        """
        context = ContextStack.create({'foo': 'bar'}, None)
        self.assertEqual(context.get('foo'), 'bar')
Exemple #13
0
    def test_create__precedence_keyword(self):
        """
        Test precedence of keyword arguments.

        """
        context = ContextStack.create({'foo': 'bar'}, foo='buzz')
        self.assertEqual(context.get('foo'), 'buzz')
Exemple #14
0
    def test_create__precedence_positional(self):
        """
        Test precedence of positional arguments.

        """
        context = ContextStack.create({'foo': 'bar'}, {'foo': 'buzz'})
        self.assertEqual(context.get('foo'), 'buzz')
Exemple #15
0
    def test_create__kwarg(self):
        """
        Test passing a keyword argument.

        """
        context = ContextStack.create(foo='bar')
        self.assertEqual(context.get('foo'), 'bar')
Exemple #16
0
    def test_create__context(self):
        """
        Test passing a ContextStack instance.

        """
        obj = ContextStack({"foo": "bar"})
        context = ContextStack.create(obj)
        self.assertEqual(context.get("foo"), "bar")
Exemple #17
0
    def test_create__context(self):
        """
        Test passing a ContextStack instance.

        """
        obj = ContextStack({'foo': 'bar'})
        context = ContextStack.create(obj)
        self.assertEqual(context.get('foo'), 'bar')
Exemple #18
0
    def test_create__context(self):
        """
        Test passing a ContextStack instance.

        """
        obj = ContextStack({'foo': 'bar'})
        context = ContextStack.create(obj)
        self.assertEqual(context.get('foo'), 'bar')
Exemple #19
0
    def test_create__object(self):
        """
        Test passing an object.

        """
        class Foo(object):
            foo = 'bar'
        context = ContextStack.create(Foo())
        self.assertEqual(context.get('foo'), 'bar')
Exemple #20
0
    def test_create__object(self):
        """
        Test passing an object.

        """
        class Foo(object):
            foo = 'bar'
        context = ContextStack.create(Foo())
        self.assertEqual(context.get('foo'), 'bar')
Exemple #21
0
    def test_create__object(self):
        """
        Test passing an object.

        """

        class Foo(object):
            foo = "bar"

        context = ContextStack.create(Foo())
        self.assertEqual(context.get("foo"), "bar")
Exemple #22
0
    def _render_final(self, render_func, *context, **kwargs):
        """
        Arguments:

          render_func: a function that accepts a RenderEngine and ContextStack
            instance and returns a template rendering as a unicode string.

        """
        stack = ContextStack.create(*context, **kwargs)
        self._context = stack

        engine = self._make_render_engine()

        return render_func(engine, stack)
Exemple #23
0
    def _render_final(self, render_func, *context, **kwargs):
        """
        Arguments:

          render_func: a function that accepts a RenderEngine and ContextStack
            instance and returns a template rendering as a unicode string.

        """
        stack = ContextStack.create(*context, **kwargs)
        self._context = stack

        engine = self._make_render_engine()

        return render_func(engine, stack)
Exemple #24
0
    def _render_string(self, template, *context, **kwargs):
        """
        Render the given template string using the given context.

        """
        # RenderEngine.render() requires that the template string be unicode.
        template = self._to_unicode_hard(template)

        context = ContextStack.create(*context, **kwargs)
        self._context = context

        engine = self._make_render_engine()
        rendered = engine.render(template, context)

        return str(rendered)
Exemple #25
0
    def _render_string(self, template, *context, **kwargs):
        """
        Render the given template string using the given context.

        """
        # RenderEngine.render() requires that the template string be unicode.
        template = self._to_unicode_hard(template)

        context = ContextStack.create(*context, **kwargs)
        self._context = context

        engine = self._make_render_engine()
        rendered = engine.render(template, context)

        return str(rendered)
Exemple #26
0
    def render_name(self, template_name, *context, **kwargs):
        try:
            parsed_template = None
            cache_key = "%s_template_%s" % (options.site_name, template_name)
            parsed_template = self.memcache_get(cache_key)
            if not parsed_template:
                loader = self._make_loader()
                template = loader.load_name(template_name)
                template = self._to_unicode_hard(template)
                parsed_template = parse(template, None)
                self.memcache_set(cache_key, parsed_template)

            stack = ContextStack.create(*context, **kwargs)
            self._context = stack
            engine = self._make_render_engine()
            return parsed_template.render(engine, stack)
        except Exception as e:
            logging.exception(e)
            return e.message