]> Raphaƫl G. Git Repositories - youtubedl/blob - test/test_update.py
debian/rules: Adapt to new upstream build system.
[youtubedl] / test / test_update.py
1 #!/usr/bin/env python
2
3 from __future__ import unicode_literals
4
5 # Allow direct execution
6 import os
7 import sys
8 import unittest
9 sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
10
11
12 import json
13 from youtube_dl.update import rsa_verify
14
15
16 class TestUpdate(unittest.TestCase):
17 def test_rsa_verify(self):
18 UPDATES_RSA_KEY = (0x9d60ee4d8f805312fdb15a62f87b95bd66177b91df176765d13514a0f1754bcd2057295c5b6f1d35daa6742c3ffc9a82d3e118861c207995a8031e151d863c9927e304576bc80692bc8e094896fcf11b66f3e29e04e3a71e9a11558558acea1840aec37fc396fb6b65dc81a1c4144e03bd1c011de62e3f1357b327d08426fe93, 65537)
19 with open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'versions.json'), 'rb') as f:
20 versions_info = f.read().decode()
21 versions_info = json.loads(versions_info)
22 signature = versions_info['signature']
23 del versions_info['signature']
24 self.assertTrue(rsa_verify(
25 json.dumps(versions_info, sort_keys=True).encode('utf-8'),
26 signature, UPDATES_RSA_KEY))
27
28
29 if __name__ == '__main__':
30 unittest.main()