From ca59592ff761fb25773ab93486018fcb3378a9c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christopher=20Ram=C3=ADrez?= Date: Wed, 29 Apr 2015 16:31:15 -0600 Subject: [PATCH] Fixs #16. --- secretary.py | 9 +++++---- test_secretary.py | 1 + 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/secretary.py b/secretary.py index 272c43c..75731f9 100644 --- a/secretary.py +++ b/secretary.py @@ -314,10 +314,11 @@ class Renderer(object): and unescapes HTML codes for >, <, & and " """ unescape_rules = { - r'(?is)({[{|%].*)(>)(.*[%|}]})': r'\1>\3', - r'(?is)({[{|%].*)(<)(.*[%|}]})': r'\1<\3', - r'(?is)({[{|%].*)(&)(.*[%|}]})': r'\1&\3', - r'(?is)({[{|%].*)(")(.*[%|}]})': r'\1"\3' + r'(?is)({([{|%])[^%|}]*?)()(.*?[%|}]})': r'\1 \4', + r'(?is)({([{|%]).*)(>)(.*?[%|}]})' : r'\1>\4', + r'(?is)({([{|%]).*)(<)(.*?[%|}]})' : r'\1<\4', + r'(?is)({([{|%]).*)(&)(.*?[%|}]})' : r'\1&\4', + r'(?is)({([{|%]).*)(")(.*?[%|}]})' : r'\1"\4', } for regexp, replacement in unescape_rules.items(): diff --git a/test_secretary.py b/test_secretary.py index 766a971..cd15a97 100644 --- a/test_secretary.py +++ b/test_secretary.py @@ -35,6 +35,7 @@ class RenderTestCase(TestCase): '{{ if multiple_spaces }}': '{{ if multiple_spaces }}', '{{ if multiple_spaces }}': '{{ if multiple_spaces }}', '{{ if multiple_spaces }}': '{{ if multiple_spaces }}', + '{{ if [1,2,3]<2 }}': '{{ if [1,2,3] < 2 }}', } for test, expect in test_samples.items():