Пример #1
0
    def render(self, context=None, request=None):
        # dict from_context is from django_jinja and I am not sure if we still
        # need this; it is the last reason for this object and file to exist
        if isinstance(context,BaseContext):
            context = dict_from_context(context)

        return super(Template, self).render(context, request)
Пример #2
0
    def test_cache_01(self):
        template_content = "{% cache 200 'fooo' %}foo bar{% endcache %}"

        request = self.factory.get("/customer/details")
        context = dict_from_context(RequestContext(request))

        template = env.from_string(template_content)
        result = template.render(context)

        self.assertEqual(result, "foo bar")
Пример #3
0
    def test_cache_01(self):
        template_content = "{% cache 200 'fooo' %}fóäo bar{% endcache %}"

        request = self.factory.get('/customer/details')
        context = dict_from_context(RequestContext(request))

        template = self.env.from_string(template_content)
        result = template.render(context)

        self.assertEqual(result, "fóäo bar")
Пример #4
0
    def test_csrf_01(self):
        template_content = "{% csrf_token %}"

        request = self.factory.get("/customer/details")
        if sys.version_info.major < 3:
            request.META["CSRF_COOKIE"] = b"1234123123"
        else:
            request.META["CSRF_COOKIE"] = "1234123123"

        context = dict_from_context(RequestContext(request))

        template = env.from_string(template_content)
        result = template.render(context)
        self.assertEqual(result, "<input type='hidden' name='csrfmiddlewaretoken' value='1234123123' />")
Пример #5
0
    def test_csrf_01(self):
        template_content = "{% csrf_token %}"

        request = self.factory.get('/customer/details')
        if sys.version_info[0] < 3:
            request.META["CSRF_COOKIE"] = b'1234123123'
        else:
            request.META["CSRF_COOKIE"] = '1234123123'

        context = dict_from_context(RequestContext(request))

        template = env.from_string(template_content)
        result = template.render(context)
        self.assertEqual(result, "<input type='hidden' name='csrfmiddlewaretoken' value='1234123123' />")
Пример #6
0
    def test_csrf_01(self):
        template_content = "{% csrf_token %}"

        request = self.factory.get('/customer/details')
        if sys.version_info[0] < 3:
            request.META["CSRF_COOKIE"] = b'1234123123'
        else:
            request.META["CSRF_COOKIE"] = '1234123123'

        if django.VERSION[:2] >= (1, 8):
            template = self.env.from_string(template_content)
            result = template.render({}, request)

        else:
            context = dict_from_context(RequestContext(request))
            template = self.env.from_string(template_content)
            result = template.render(context)

        self.assertEqual(result, "<input type='hidden' name='csrfmiddlewaretoken' value='1234123123' />")
Пример #7
0
def get_jinja_context(**ctx):
    '''Generate a jinja context like django-jinja'''
    from wapps import factories
    engine = engines['jinja2']
    request = ctx.get('request', factories.RequestFactory().get('/'))
    context = dict_from_context(ctx)

    def _get_val():
        token = csrf.get_token(request)
        if token is None:
            return 'NOTPROVIDED'
        else:
            return smart_text(token)

    context["request"] = request
    context["csrf_token"] = SimpleLazyObject(_get_val)

    # Support for django context processors
    for processor in engine.context_processors:
        context.update(processor(request))

    return engine.from_string('').template.new_context(context)
Пример #8
0
def get_jinja_context(**ctx):
    '''Generate a jinja context like django-jinja'''
    from wapps import factories
    engine = engines['jinja2']
    request = ctx.get('request', factories.RequestFactory().get('/'))
    context = dict_from_context(ctx)

    def _get_val():
        token = csrf.get_token(request)
        if token is None:
            return 'NOTPROVIDED'
        else:
            return smart_text(token)

    context["request"] = request
    context["csrf_token"] = SimpleLazyObject(_get_val)

    # Support for django context processors
    for processor in engine.context_processors:
        context.update(processor(request))

    return engine.from_string('').template.new_context(context)