@ -68,6 +68,9 @@ from youtube_dl.utils import (
cli_valueless_option ,
cli_valueless_option ,
cli_bool_option ,
cli_bool_option ,
)
)
from youtube_dl . compat import (
compat_etree_fromstring ,
)
class TestUtil ( unittest . TestCase ) :
class TestUtil ( unittest . TestCase ) :
@ -242,7 +245,7 @@ class TestUtil(unittest.TestCase):
< node x = " b " y = " d " / >
< node x = " b " y = " d " / >
< node x = " " / >
< node x = " " / >
< / root > '''
< / root > '''
doc = xml. etree . ElementTree . fromstring( testxml )
doc = compat_etree_ fromstring( testxml )
self . assertEqual ( find_xpath_attr ( doc , ' .//fourohfour ' , ' n ' ) , None )
self . assertEqual ( find_xpath_attr ( doc , ' .//fourohfour ' , ' n ' ) , None )
self . assertEqual ( find_xpath_attr ( doc , ' .//fourohfour ' , ' n ' , ' v ' ) , None )
self . assertEqual ( find_xpath_attr ( doc , ' .//fourohfour ' , ' n ' , ' v ' ) , None )
@ -263,7 +266,7 @@ class TestUtil(unittest.TestCase):
< url > http : / / server . com / download . mp3 < / url >
< url > http : / / server . com / download . mp3 < / url >
< / media : song >
< / media : song >
< / root > '''
< / root > '''
doc = xml. etree . ElementTree . fromstring( testxml )
doc = compat_etree_ fromstring( testxml )
find = lambda p : doc . find ( xpath_with_ns ( p , { ' media ' : ' http://example.com/ ' } ) )
find = lambda p : doc . find ( xpath_with_ns ( p , { ' media ' : ' http://example.com/ ' } ) )
self . assertTrue ( find ( ' media:song ' ) is not None )
self . assertTrue ( find ( ' media:song ' ) is not None )
self . assertEqual ( find ( ' media:song/media:author ' ) . text , ' The Author ' )
self . assertEqual ( find ( ' media:song/media:author ' ) . text , ' The Author ' )
@ -292,7 +295,7 @@ class TestUtil(unittest.TestCase):
< p > Foo < / p >
< p > Foo < / p >
< / div >
< / div >
< / root > '''
< / root > '''
doc = xml. etree . ElementTree . fromstring( testxml )
doc = compat_etree_ fromstring( testxml )
self . assertEqual ( xpath_text ( doc , ' div/p ' ) , ' Foo ' )
self . assertEqual ( xpath_text ( doc , ' div/p ' ) , ' Foo ' )
self . assertEqual ( xpath_text ( doc , ' div/bar ' , default = ' default ' ) , ' default ' )
self . assertEqual ( xpath_text ( doc , ' div/bar ' , default = ' default ' ) , ' default ' )
self . assertTrue ( xpath_text ( doc , ' div/bar ' ) is None )
self . assertTrue ( xpath_text ( doc , ' div/bar ' ) is None )
@ -304,7 +307,7 @@ class TestUtil(unittest.TestCase):
< p x = " a " > Foo < / p >
< p x = " a " > Foo < / p >
< / div >
< / div >
< / root > '''
< / root > '''
doc = xml. etree . ElementTree . fromstring( testxml )
doc = compat_etree_ fromstring( testxml )
self . assertEqual ( xpath_attr ( doc , ' div/p ' , ' x ' ) , ' a ' )
self . assertEqual ( xpath_attr ( doc , ' div/p ' , ' x ' ) , ' a ' )
self . assertEqual ( xpath_attr ( doc , ' div/bar ' , ' x ' ) , None )
self . assertEqual ( xpath_attr ( doc , ' div/bar ' , ' x ' ) , None )
self . assertEqual ( xpath_attr ( doc , ' div/p ' , ' y ' ) , None )
self . assertEqual ( xpath_attr ( doc , ' div/p ' , ' y ' ) , None )