summary refs log tree commit diff
diff options
context:
space:
mode:
authorPhilipp Hagemeister <phihag@phihag.de>2014-07-11 10:34:01 +0200
committerPhilipp Hagemeister <phihag@phihag.de>2014-07-11 10:34:01 +0200
commit6f9d4d542f8a5f565fe7811e6d07553f4d9c69cc (patch)
treeb4931cc8b8960f2d6417a10df0bc05c4da1ca7ba
parentb3a88780802a83686671945471d042dd864e7ccb (diff)
downloadyoutube-dl-6f9d4d542f8a5f565fe7811e6d07553f4d9c69cc.tar.gz
youtube-dl-6f9d4d542f8a5f565fe7811e6d07553f4d9c69cc.tar.xz
youtube-dl-6f9d4d542f8a5f565fe7811e6d07553f4d9c69cc.zip
[youtube] Add test for new signature scheme (#3232)
-rw-r--r--test/test_youtube_signature.py12
1 files changed, 10 insertions, 2 deletions
diff --git a/test/test_youtube_signature.py b/test/test_youtube_signature.py
index 8417c55a6..6e0fa14a8 100644
--- a/test/test_youtube_signature.py
+++ b/test/test_youtube_signature.py
@@ -33,6 +33,12 @@ _TESTS = [
         90,
         u']\\[@?>=<;:/.-,+*)(\'&%$#"hZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjiagfedcb39876',
     ),
+    (
+        u'https://s.ytimg.com/yts/jsbin/html5player-en_US-vflXGBaUN.js',
+        u'js',
+        u'BF51B8F76F05D81CEAED01F5ACE376131B23D830.5805F8368CB04C36C973A8CF997B774AC4B685B77',
+        u'2909FDCA8C5E6D92D34B34E7C7AFFD7CA57532DA.5BA2848AD58DAA15002012C7CD77187D24E048A5',
+    ),
 ]
 
 
@@ -44,7 +50,7 @@ class TestSignature(unittest.TestCase):
             os.mkdir(self.TESTDATA_DIR)
 
 
-def make_tfunc(url, stype, sig_length, expected_sig):
+def make_tfunc(url, stype, sig_input, expected_sig):
     basename = url.rpartition('/')[2]
     m = re.match(r'.*-([a-zA-Z0-9_-]+)\.[a-z]+$', basename)
     assert m, '%r should follow URL format' % basename
@@ -66,7 +72,9 @@ def make_tfunc(url, stype, sig_length, expected_sig):
             with open(fn, 'rb') as testf:
                 swfcode = testf.read()
             func = ie._parse_sig_swf(swfcode)
-        src_sig = compat_str(string.printable[:sig_length])
+        src_sig = (
+            compat_str(string.printable[:sig_input])
+            if isinstance(sig_input, int) else sig_input)
         got_sig = func(src_sig)
         self.assertEqual(got_sig, expected_sig)