summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEzio Melotti <ezio.melotti@gmail.com>2013-11-22 03:49:29 (GMT)
committerEzio Melotti <ezio.melotti@gmail.com>2013-11-22 03:49:29 (GMT)
commitf6de9eb2bb3c3c16694d582e3e1e2e9f56b97aab (patch)
tree1ac8e32faba127a5b7accab4fd72109a787f7867
parent32f0c7a67b6b2eb3808b47b462e837582d6710f8 (diff)
downloadcpython-f6de9eb2bb3c3c16694d582e3e1e2e9f56b97aab.zip
cpython-f6de9eb2bb3c3c16694d582e3e1e2e9f56b97aab.tar.gz
cpython-f6de9eb2bb3c3c16694d582e3e1e2e9f56b97aab.tar.bz2
#19688: add back and deprecate the internal HTMLParser.unescape() method.
-rw-r--r--Lib/html/parser.py7
-rw-r--r--Lib/test/test_htmlparser.py7
2 files changed, 14 insertions, 0 deletions
diff --git a/Lib/html/parser.py b/Lib/html/parser.py
index e793c37..a228e8e 100644
--- a/Lib/html/parser.py
+++ b/Lib/html/parser.py
@@ -513,3 +513,10 @@ class HTMLParser(_markupbase.ParserBase):
def unknown_decl(self, data):
if self.strict:
self.error("unknown declaration: %r" % (data,))
+
+ # Internal -- helper to remove special character quoting
+ def unescape(self, s):
+ warnings.warn('The unescape method is deprecated and will be removed '
+ 'in 3.5, use html.unescape() instead.',
+ DeprecationWarning, stacklevel=2)
+ return unescape(s)
diff --git a/Lib/test/test_htmlparser.py b/Lib/test/test_htmlparser.py
index a943d3a..509b3cd 100644
--- a/Lib/test/test_htmlparser.py
+++ b/Lib/test/test_htmlparser.py
@@ -569,6 +569,13 @@ class HTMLParserTolerantTestCase(HTMLParserStrictTestCase):
for html, expected in data:
self._run_check(html, expected)
+ def test_unescape_method(self):
+ from html import unescape
+ p = self.get_collector()
+ with self.assertWarns(DeprecationWarning):
+ s = '&quot;&#34;&#x22;&quot&#34&#x22&#bad;'
+ self.assertEqual(p.unescape(s), unescape(s))
+
def test_broken_comments(self):
html = ('<! not really a comment >'
'<! not a comment either -->'