This commit is contained in:
Christopher Ramírez 2015-04-29 16:31:15 -06:00
parent 029bc9b82d
commit ca59592ff7
2 changed files with 6 additions and 4 deletions

View file

@ -314,10 +314,11 @@ class Renderer(object):
and unescapes HTML codes for >, <, & and "
"""
unescape_rules = {
r'(?is)({[{|%].*)(&gt;)(.*[%|}]})': r'\1>\3',
r'(?is)({[{|%].*)(&lt;)(.*[%|}]})': r'\1<\3',
r'(?is)({[{|%].*)(&amp;)(.*[%|}]})': r'\1&\3',
r'(?is)({[{|%].*)(&quot;)(.*[%|}]})': r'\1"\3'
r'(?is)({([{|%])[^%|}]*?)(</?text:s.*?>)(.*?[%|}]})': r'\1 \4',
r'(?is)({([{|%]).*)(&gt;)(.*?[%|}]})' : r'\1>\4',
r'(?is)({([{|%]).*)(&lt;)(.*?[%|}]})' : r'\1<\4',
r'(?is)({([{|%]).*)(&amp;)(.*?[%|}]})' : r'\1&\4',
r'(?is)({([{|%]).*)(&quot;)(.*?[%|}]})' : r'\1"\4',
}
for regexp, replacement in unescape_rules.items():

View file

@ -35,6 +35,7 @@ class RenderTestCase(TestCase):
'{{ if <text:s> multiple_spaces }}': '{{ if multiple_spaces }}',
'{{ if </text:s> multiple_spaces }}': '{{ if multiple_spaces }}',
'{{ if <text:s/> multiple_spaces }}': '{{ if multiple_spaces }}',
'{{ if <text:span/>[1,2,3]<text:span>&lt;</text:span>2 }}': '{{ if [1,2,3] < 2 }}',
}
for test, expect in test_samples.items():