1
0
mirror of https://github.com/mxpv/podsync.git synced 2024-05-11 05:55:04 +00:00
mxpv-podsync/cmd/updater/updater_test.py
2019-04-05 13:23:48 -07:00

52 lines
1.8 KiB
Python

import updater
import unittest
TEST_URL = 'https://www.youtube.com/user/CNN/videos'
class TestUpdater(unittest.TestCase):
def test_get_updates(self):
kinds = [
updater._get_format({'Format': 'video', 'Quality': 'high'}),
updater._get_format({'Format': 'video', 'Quality': 'low'}),
updater._get_format({'Format': 'audio', 'Quality': 'high'}),
updater._get_format({'Format': 'audio', 'Quality': 'low'}),
]
for kind in kinds:
with self.subTest(kind):
feed, items, _ = updater._get_updates(1, 1, TEST_URL, kind)
self.assertIsNotNone(feed)
self.assertIsNotNone(items)
def test_get_change_list(self):
feed, items, last_id = updater._get_updates(1, 5, TEST_URL, 'worst[ext=mp4]')
self.assertEqual(len(items), 5)
self.assertEqual(items[0]['ID'], last_id)
test_last_id = items[2]['ID']
self.assertIsNotNone(test_last_id)
feed, items, last_id = updater._get_updates(1, 5, TEST_URL, 'worst[ext=mp4]', test_last_id)
self.assertEqual(len(items), 2)
self.assertEqual(items[0]['ID'], last_id)
def test_last_id(self):
feed, items, last_id = updater._get_updates(1, 1, TEST_URL, 'worstaudio')
self.assertEqual(len(items), 1)
self.assertEqual(items[0]['ID'], last_id)
@unittest.skip('heavy test, run manually')
def test_get_50(self):
_, items, last_id = updater.handler({
'url': 'https://www.youtube.com/channel/UCd6MoB9NC6uYN2grvUNT-Zg',
'start': 1,
'count': 50,
'kind': 'best[ext=mp4]',
}, None)
self.assertEqual(len(items), 50)
self.assertEqual(items[0]['ID'], last_id)
@unittest.skip
def test_update_feed(self):
updater._update_feed('86qZ')