def test_validate_context(self): sekizai_ctx = SekizaiContext() django_ctx = template.Context() self.assertRaises(template.TemplateSyntaxError, validate_context, django_ctx) self.assertEqual(validate_context(sekizai_ctx), True) with SettingsOverride(TEMPLATE_DEBUG=False): self.assertEqual(validate_context(django_ctx), False) self.assertEqual(validate_context(sekizai_ctx), True) bits = ['some content', 'more content', 'final content'] self._test('basic.html', bits, ctxclass=template.Context)
def test_validate_context(self): sekizai_ctx = SekizaiContext() django_ctx = template.Context() self.assertRaises(template.TemplateSyntaxError, validate_context, django_ctx) self.assertEqual(validate_context(sekizai_ctx), True) with update_template_debug(debug=False): self.assertEqual(validate_context(django_ctx), False) self.assertEqual(validate_context(sekizai_ctx), True) bits = ['some content', 'more content', 'final content'] self._test('basic.html', bits, sekizai_context=False)
def test_validate_context(self): sekizai_ctx = SekizaiContext() django_ctx = template.Context() self.assertRaises( template.TemplateSyntaxError, validate_context, django_ctx ) self.assertEqual(validate_context(sekizai_ctx), True) with update_template_debug(debug=False): self.assertEqual(validate_context(django_ctx), False) self.assertEqual(validate_context(sekizai_ctx), True) bits = ['some content', 'more content', 'final content'] self._test('basic.html', bits, sekizai_context=False)
def render_tag(self, context, name, postprocessor, nodelist): if not validate_context(context): return nodelist.render(context) rendered_contents = nodelist.render(context) varname = get_varname() data = context[varname][name].render() if postprocessor: func = import_processor(postprocessor) data = func(context, data, name) return '%s\n%s' % (data, rendered_contents)
def render_tag(self, context, name, js_or_css, postprocessor, nodelist): if not validate_context(context): return nodelist.render(context) rendered_contents = nodelist.render(context) varname = get_varname() data = '\n'.join(context[varname][name]) if postprocessor: func = import_processor(postprocessor) if js_or_css: data = func(context, data, js_or_css) # the custom else: data = func(context, data, name) return '%s\n%s' % (data, rendered_contents)
def render(self, context): if validate_context(context): return super(SekizaiTag, self).render(context) return ''