[test/utils] Test xpath_text
This commit is contained in:
		@@ -24,6 +24,7 @@ from youtube_dl.utils import (
 | 
			
		||||
    encodeFilename,
 | 
			
		||||
    escape_rfc3986,
 | 
			
		||||
    escape_url,
 | 
			
		||||
    ExtractorError,
 | 
			
		||||
    find_xpath_attr,
 | 
			
		||||
    fix_xml_ampersands,
 | 
			
		||||
    InAdvancePagedList,
 | 
			
		||||
@@ -54,6 +55,7 @@ from youtube_dl.utils import (
 | 
			
		||||
    urlencode_postdata,
 | 
			
		||||
    version_tuple,
 | 
			
		||||
    xpath_with_ns,
 | 
			
		||||
    xpath_text,
 | 
			
		||||
    render_table,
 | 
			
		||||
    match_str,
 | 
			
		||||
)
 | 
			
		||||
@@ -250,6 +252,17 @@ class TestUtil(unittest.TestCase):
 | 
			
		||||
        self.assertEqual(find('media:song/media:author').text, 'The Author')
 | 
			
		||||
        self.assertEqual(find('media:song/url').text, 'http://server.com/download.mp3')
 | 
			
		||||
 | 
			
		||||
    def test_xpath_text(self):
 | 
			
		||||
        testxml = '''<root>
 | 
			
		||||
            <div>
 | 
			
		||||
                <p>Foo</p>
 | 
			
		||||
            </div>
 | 
			
		||||
        </root>'''
 | 
			
		||||
        doc = xml.etree.ElementTree.fromstring(testxml)
 | 
			
		||||
        self.assertEqual(xpath_text(doc, 'div/p'), 'Foo')
 | 
			
		||||
        self.assertTrue(xpath_text(doc, 'div/bar') is None)
 | 
			
		||||
        self.assertRaises(ExtractorError, xpath_text, doc, 'div/bar', fatal=True)
 | 
			
		||||
 | 
			
		||||
    def test_smuggle_url(self):
 | 
			
		||||
        data = {"ö": "ö", "abc": [3]}
 | 
			
		||||
        url = 'https://foo.bar/baz?x=y#a'
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user