]> jfr.im git - yt-dlp.git/blame - test/test_youtube_sig.py
YoutubeIE: add algo for length 90 (closes #1064)
[yt-dlp.git] / test / test_youtube_sig.py
CommitLineData
5746f9da
PH
1#!/usr/bin/env python
2
3import unittest
4import sys
5
6# Allow direct execution
7import os
8sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
9
10from youtube_dl.extractor.youtube import YoutubeIE
11from helper import FakeYDL
12
13sig = YoutubeIE(FakeYDL())._decrypt_signature
14
15class TestYoutubeSig(unittest.TestCase):
16 def test_43_43(self):
17 wrong = '5AEEAE0EC39677BC65FD9021CCD115F1F2DBD5A59E4.C0B243A3E2DED6769199AF3461781E75122AE135135'
18 right = '931EA22157E1871643FA9519676DED253A342B0C.4E95A5DBD2F1F511DCC1209DF56CB77693CE0EAE'
19 self.assertEqual(sig(wrong), right)
20
444b1165
JMF
21 def test_92(self):
22 wrong = "F9F9B6E6FD47029957AB911A964CC20D95A181A5D37A2DBEFD67D403DB0E8BE4F4910053E4E8A79.0B70B.0B80B8"
23 right = "69B6E6FD47029957AB911A9F4CC20D95A181A5D3.A2DBEFD67D403DB0E8BE4F4910053E4E8A7980B7"
24 self.assertEqual(sig(wrong), right)
25
26 def test_90(self):
27 wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!@#$%^&*()_-+={[]}|:;?/>.<'`"
28 right = "mrtyuioplkjhgfdsazxcvbne1234567890QWER[YUIOPLKJHGFDSAZXCVBNM!@#$%^&*()_-+={`]}|"
29 self.assertEqual(sig(wrong), right)
30
6b37f0be
PH
31 def test_88(self):
32 wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!@#$%^&*()_-+={[]}|:;?/>.<"
33 right = "J:|}][{=+-_)(*&;%$#@>MNBVCXZASDFGH^KLPOIUYTREWQ0987654321mnbvcxzasdfghrklpoiuytej"
34 self.assertEqual(sig(wrong), right)
23300d71 35
6b37f0be
PH
36 def test_87(self):
37 wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!@#$^&*()_-+={[]}|:;?/>.<"
38 right = "!?;:|}][{=+-_)(*&^$#@/MNBVCXZASqFGHJKLPOIUYTREWQ0987654321mnbvcxzasdfghjklpoiuytr"
39 self.assertEqual(sig(wrong), right)
23300d71 40
6b37f0be
PH
41 def test_86(self):
42 wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!@#$%^&*()_-+={[|};?/>.<"
23300d71 43 right = "ertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!/#$%^&*()_-+={[|};?@"
6b37f0be 44 self.assertEqual(sig(wrong), right)
23300d71 45
6b37f0be
PH
46 def test_85(self):
47 wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!@#$%^&*()_-+={[};?/>.<"
48 right = "{>/?;}[.=+-_)(*&^%$#@!MqBVCXZASDFwHJKLPOIUYTREWQ0987654321mnbvcxzasdfghjklpoiuytr"
49 self.assertEqual(sig(wrong), right)
23300d71 50
6b37f0be
PH
51 def test_84(self):
52 wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!@#$%^&*()_-+={[};?>.<"
53 right = "<.>?;}[{=+-_)(*&^%$#@!MNBVCXZASDFGHJKLPOIUYTREWe098765432rmnbvcxzasdfghjklpoiuyt1"
54 self.assertEqual(sig(wrong), right)
23300d71 55
6b37f0be
PH
56 def test_83(self):
57 wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!#$%^&*()_+={[};?/>.<"
85347e1c 58 right = "urty8ioplkjhgfdsazxcvbqm1234567S90QWERTYUIOPLKJHGFDnAZXCVBNM!#$%^&*()_+={[};?/>.<"
6b37f0be 59 self.assertEqual(sig(wrong), right)
23300d71 60
6b37f0be
PH
61 def test_82(self):
62 wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKHGFDSAZXCVBNM!@#$%^&*(-+={[};?/>.<"
63 right = "Q>/?;}[{=+-(*<^%$#@!MNBVCXZASDFGHKLPOIUY8REWT0q&7654321mnbvcxzasdfghjklpoiuytrew9"
64 self.assertEqual(sig(wrong), right)
65
606d7e67
JMF
66 def test_81(self):
67 wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKHGFDSAZXCVBNM!@#$%^&*(-+={[};?/>."
68 right = "urty8ioplkjhgfdsazxcvbqm1234567e90QWERTYUIOPLKHGFDSnZXCVBNM!@#$%^&*(-+={[};?/>."
69 self.assertEqual(sig(wrong), right)
70
5746f9da
PH
71if __name__ == '__main__':
72 unittest.main()