2021-06-03 05:43:42 -04:00
|
|
|
#!/usr/bin/env python3
|
2015-12-13 21:18:13 -05:00
|
|
|
# Allow direct execution
|
|
|
|
import os
|
|
|
|
import sys
|
|
|
|
import unittest
|
2022-04-11 18:32:57 -04:00
|
|
|
|
2015-12-13 21:18:13 -05:00
|
|
|
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
|
|
|
|
|
|
|
|
|
|
|
import json
|
2022-04-11 18:32:57 -04:00
|
|
|
|
2021-02-24 13:45:56 -05:00
|
|
|
from yt_dlp.update import rsa_verify
|
2015-12-13 21:18:13 -05:00
|
|
|
|
|
|
|
|
|
|
|
class TestUpdate(unittest.TestCase):
|
|
|
|
def test_rsa_verify(self):
|
|
|
|
UPDATES_RSA_KEY = (0x9d60ee4d8f805312fdb15a62f87b95bd66177b91df176765d13514a0f1754bcd2057295c5b6f1d35daa6742c3ffc9a82d3e118861c207995a8031e151d863c9927e304576bc80692bc8e094896fcf11b66f3e29e04e3a71e9a11558558acea1840aec37fc396fb6b65dc81a1c4144e03bd1c011de62e3f1357b327d08426fe93, 65537)
|
|
|
|
with open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'versions.json'), 'rb') as f:
|
|
|
|
versions_info = f.read().decode()
|
|
|
|
versions_info = json.loads(versions_info)
|
|
|
|
signature = versions_info['signature']
|
|
|
|
del versions_info['signature']
|
|
|
|
self.assertTrue(rsa_verify(
|
|
|
|
json.dumps(versions_info, sort_keys=True).encode('utf-8'),
|
|
|
|
signature, UPDATES_RSA_KEY))
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
unittest.main()
|