def render_xml_to_string(request, template, context=None): from olympia.amo.templatetags.jinja_helpers import strip_controls if context is None: context = {} xml_env = engines['jinja2'].env.overlay() old_finalize = xml_env.finalize xml_env.finalize = lambda x: strip_controls(old_finalize(x)) for processor in engines['jinja2'].context_processors: context.update(processor(request)) template = xml_env.get_template(template) return template.render(context)
def test_strip_controls(): # We want control codes like \x0c to disappear. assert 'I ove you' == jinja_helpers.strip_controls('I \x0cove you')