summaryrefslogtreecommitdiff
path: root/tests/utils_tests/test_html.py
diff options
context:
space:
mode:
authorUnai Zalakain <unai@gisa-elkartea.org>2013-10-15 00:40:52 +0200
committerUnai Zalakain <unai@gisa-elkartea.org>2013-10-15 00:42:42 +0200
commitaf64429b991471b7a441e133b5b7d29070984f24 (patch)
treec425d99ae3e8ee7c4b1d856010c577ae27021b27 /tests/utils_tests/test_html.py
parentef22d512b54cbf0b5f76151bc760391d839fbf72 (diff)
Fixed #7261 -- support for __html__ for library interoperability
The idea is that if an object implements __html__ which returns a string this is used as HTML representation (eg: on escaping). If the object is a str or unicode subclass and returns itself the object is a safe string type. This is an updated patch based on jbalogh and ivank patches.
Diffstat (limited to 'tests/utils_tests/test_html.py')
-rw-r--r--tests/utils_tests/test_html.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/tests/utils_tests/test_html.py b/tests/utils_tests/test_html.py
index 74d94ea19d..28e9e326e0 100644
--- a/tests/utils_tests/test_html.py
+++ b/tests/utils_tests/test_html.py
@@ -5,7 +5,7 @@ from datetime import datetime
import os
from unittest import TestCase
-from django.utils import html
+from django.utils import html, safestring
from django.utils._os import upath
from django.utils.encoding import force_text
@@ -192,3 +192,9 @@ class TestUtilsHtml(TestCase):
self.assertEqual(quote('http://example.com/path/öäü/'), 'http://example.com/path/%C3%B6%C3%A4%C3%BC/')
self.assertEqual(quote('http://example.com/%C3%B6/ä/'), 'http://example.com/%C3%B6/%C3%A4/')
self.assertEqual(quote('http://example.com/?x=1&y=2'), 'http://example.com/?x=1&y=2')
+
+ def test_conditional_escape(self):
+ s = '<h1>interop</h1>'
+ self.assertEqual(html.conditional_escape(s),
+ '&lt;h1&gt;interop&lt;/h1&gt;')
+ self.assertEqual(html.conditional_escape(safestring.mark_safe(s)), s)