aboutsummaryrefslogtreecommitdiff
path: root/test/test_compat.py
diff options
context:
space:
mode:
authorSergey M <dstftw@gmail.com>2015-10-31 18:15:21 +0000
committerSergey M <dstftw@gmail.com>2015-10-31 18:15:21 +0000
commit30eecc6a044d4070d0e8ea4a6e0637867f0d3a28 (patch)
treec120cc9df90a468bb0d58bb7a7601cb8418eb32f /test/test_compat.py
parentdbd82a1d4fff1655920e111cc25a7fd526d7bf9a (diff)
parentae37338e681319a28d98dc551253d9fa1830969a (diff)
downloadyoutube-dl-30eecc6a044d4070d0e8ea4a6e0637867f0d3a28.tar.xz
Merge pull request #7296 from jaimeMF/xml_attrib_unicode
Use a wrapper around xml.etree.ElementTree.fromstring in python 2.x (…
Diffstat (limited to 'test/test_compat.py')
-rw-r--r--test/test_compat.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/test/test_compat.py b/test/test_compat.py
index 4ee0dc99d..b6bfad05e 100644
--- a/test/test_compat.py
+++ b/test/test_compat.py
@@ -13,8 +13,10 @@ sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
from youtube_dl.utils import get_filesystem_encoding
from youtube_dl.compat import (
compat_getenv,
+ compat_etree_fromstring,
compat_expanduser,
compat_shlex_split,
+ compat_str,
compat_urllib_parse_unquote,
compat_urllib_parse_unquote_plus,
)
@@ -71,5 +73,20 @@ class TestCompat(unittest.TestCase):
def test_compat_shlex_split(self):
self.assertEqual(compat_shlex_split('-option "one two"'), ['-option', 'one two'])
+ def test_compat_etree_fromstring(self):
+ xml = '''
+ <root foo="bar" spam="中文">
+ <normal>foo</normal>
+ <chinese>中文</chinese>
+ <foo><bar>spam</bar></foo>
+ </root>
+ '''
+ doc = compat_etree_fromstring(xml.encode('utf-8'))
+ self.assertTrue(isinstance(doc.attrib['foo'], compat_str))
+ self.assertTrue(isinstance(doc.attrib['spam'], compat_str))
+ self.assertTrue(isinstance(doc.find('normal').text, compat_str))
+ self.assertTrue(isinstance(doc.find('chinese').text, compat_str))
+ self.assertTrue(isinstance(doc.find('foo/bar').text, compat_str))
+
if __name__ == '__main__':
unittest.main()