summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--django/utils/html.py2
-rw-r--r--tests/regressiontests/defaultfilters/tests.py4
2 files changed, 5 insertions, 1 deletions
diff --git a/django/utils/html.py b/django/utils/html.py
index 390c45dcec..6a47bfc869 100644
--- a/django/utils/html.py
+++ b/django/utils/html.py
@@ -13,7 +13,7 @@ from django.utils.functional import allow_lazy
from django.utils.text import normalize_newlines
# Configuration for urlize() function.
-TRAILING_PUNCTUATION = ['.', ',', ':', ';']
+TRAILING_PUNCTUATION = ['.', ',', ':', ';', '.)']
WRAPPING_PUNCTUATION = [('(', ')'), ('<', '>'), ('&lt;', '&gt;')]
# List of possible strings used for bullets in bulleted lists.
diff --git a/tests/regressiontests/defaultfilters/tests.py b/tests/regressiontests/defaultfilters/tests.py
index ffa0a01132..d08bcf0fd9 100644
--- a/tests/regressiontests/defaultfilters/tests.py
+++ b/tests/regressiontests/defaultfilters/tests.py
@@ -297,6 +297,10 @@ class DefaultFiltersTests(TestCase):
self.assertEqual(urlize('HTTPS://github.com/'),
'<a href="https://github.com/" rel="nofollow">HTTPS://github.com/</a>')
+ # 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>.)')
+
def test_wordcount(self):
self.assertEqual(wordcount(''), 0)
self.assertEqual(wordcount('oneword'), 1)