summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Godwin <andrew@aeracode.org>2012-10-31 10:58:14 +0000
committerAndrew Godwin <andrew@aeracode.org>2012-10-31 10:58:14 +0000
commit7f75460fd6befbef805fee3c91608efb0e9f444d (patch)
treeb72753803d3146bf3355d4d75a0966d26947f7f2
parent146ed13a111c97c1c04902a6c0eda1e4ee6e604c (diff)
Fixed #19070 -- urlize filter no longer raises exceptions on 2.7
Thanks to claudep for the patch.
-rw-r--r--django/utils/html.py2
-rw-r--r--tests/regressiontests/defaultfilters/tests.py7
2 files changed, 7 insertions, 2 deletions
diff --git a/django/utils/html.py b/django/utils/html.py
index cc8372906b..9816b9accb 100644
--- a/django/utils/html.py
+++ b/django/utils/html.py
@@ -18,7 +18,7 @@ from django.utils.text import normalize_newlines
# Configuration for urlize() function.
TRAILING_PUNCTUATION = ['.', ',', ':', ';', '.)']
-WRAPPING_PUNCTUATION = [('(', ')'), ('<', '>'), ('&lt;', '&gt;')]
+WRAPPING_PUNCTUATION = [('(', ')'), ('<', '>'), ('[', ']'), ('&lt;', '&gt;')]
# List of possible strings used for bullets in bulleted lists.
DOTS = ['&middot;', '*', '\u2022', '&#149;', '&bull;', '&#8226;']
diff --git a/tests/regressiontests/defaultfilters/tests.py b/tests/regressiontests/defaultfilters/tests.py
index d00203e304..52268da2ec 100644
--- a/tests/regressiontests/defaultfilters/tests.py
+++ b/tests/regressiontests/defaultfilters/tests.py
@@ -304,7 +304,12 @@ class DefaultFiltersTests(TestCase):
# Check urlize trims trailing period when followed by parenthesis - see #18644
self.assertEqual(urlize('(Go to http://www.example.com/foo.)'),
- '(Go to <a href="http://www.example.com/foo" rel="nofollow">http://www.example.com/foo</a>.)')
+ '(Go to <a href="http://www.example.com/foo" rel="nofollow">http://www.example.com/foo</a>.)')
+
+ # Check urlize doesn't crash when square bracket is appended to url (#19070)
+ self.assertEqual(urlize('[see www.example.com]'),
+ '[see <a href="http://www.example.com" rel="nofollow">www.example.com</a>]' )
+
def test_wordcount(self):
self.assertEqual(wordcount(''), 0)