.replace(u'>', u'\\u003e') \
.replace(u'&', u'\\u0026') \
.replace(u"'", u'\\u0027')
- return rv
+ return Markup(rv)
@implements_iterator
def test_json_dump(self):
env = Environment(autoescape=True)
t = env.from_string('{{ x|tojson }}')
- assert t.render(x={'foo': 'bar'}) == '{"foo": "bar"}'
- assert t.render(x='"bar\'') == r'"\"bar\u0027"'
+ assert t.render(x={'foo': 'bar'}) == '{"foo": "bar"}'
+ assert t.render(x='"ba&r\'') == r'"\"ba\u0026r\u0027"'
+ assert t.render(x='<bar>') == r'"\u003cbar\u003e"'
def my_dumps(value, **options):
assert options == {'foo': 'bar'}