mirror of https://github.com/yt-dlp/yt-dlp
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
1.0 KiB
Python
31 lines
1.0 KiB
Python
#!/usr/bin/env python3
|
|
|
|
# Allow direct execution
|
|
import os
|
|
import sys
|
|
import unittest
|
|
|
|
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
|
|
|
|
|
import json
|
|
|
|
from yt_dlp.update import rsa_verify
|
|
|
|
|
|
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(),
|
|
signature, UPDATES_RSA_KEY))
|
|
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main()
|