From fb6c319904b2bd626af534d3d8fb0726b91081c6 Mon Sep 17 00:00:00 2001 From: ispedals Date: Fri, 19 Apr 2013 18:06:28 -0400 Subject: [PATCH] Add tests for YoutubeChannelIE - tests for identifying channel urls - test retrieval of paginated channel - test retrieval of autogenerated channel --- test/test_all_urls.py | 7 ++++++- test/test_youtube_lists.py | 12 +++++++++--- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/test/test_all_urls.py b/test/test_all_urls.py index 69717b3fc..a40360122 100644 --- a/test/test_all_urls.py +++ b/test/test_all_urls.py @@ -7,7 +7,7 @@ import unittest import os sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) -from youtube_dl.InfoExtractors import YoutubeIE, YoutubePlaylistIE +from youtube_dl.InfoExtractors import YoutubeIE, YoutubePlaylistIE, YoutubeChannelIE class TestAllURLsMatching(unittest.TestCase): def test_youtube_playlist_matching(self): @@ -24,6 +24,11 @@ class TestAllURLsMatching(unittest.TestCase): self.assertTrue(YoutubeIE.suitable(u'PLtS2H6bU1M')) self.assertFalse(YoutubeIE.suitable(u'https://www.youtube.com/watch?v=AV6J6_AeFEQ&playnext=1&list=PL4023E734DA416012')) #668 + def test_youtube_channel_matching(self): + self.assertTrue(YoutubeChannelIE.suitable('https://www.youtube.com/channel/HCtnHdj3df7iM')) + self.assertTrue(YoutubeChannelIE.suitable('https://www.youtube.com/channel/HCtnHdj3df7iM?feature=gb_ch_rec')) + self.assertTrue(YoutubeChannelIE.suitable('https://www.youtube.com/channel/HCtnHdj3df7iM/videos')) + def test_youtube_extract(self): self.assertEqual(YoutubeIE()._extract_id('http://www.youtube.com/watch?&v=BaW_jenozKc'), 'BaW_jenozKc') self.assertEqual(YoutubeIE()._extract_id('https://www.youtube.com/watch?&v=BaW_jenozKc'), 'BaW_jenozKc') diff --git a/test/test_youtube_lists.py b/test/test_youtube_lists.py index 9e91484f8..c5b22a5c4 100644 --- a/test/test_youtube_lists.py +++ b/test/test_youtube_lists.py @@ -8,7 +8,7 @@ import json import os sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) -from youtube_dl.InfoExtractors import YoutubeUserIE, YoutubePlaylistIE, YoutubeIE +from youtube_dl.InfoExtractors import YoutubeUserIE, YoutubePlaylistIE, YoutubeIE, YoutubeChannelIE from youtube_dl.utils import * from youtube_dl.FileDownloader import FileDownloader @@ -81,8 +81,14 @@ class TestYoutubeLists(unittest.TestCase): self.assertEqual(YoutubeIE()._extract_id(entries[-1]['url']), 'rYefUsYuEp0') def test_youtube_channel(self): - # I give up, please find a channel that does paginate and test this like test_youtube_playlist_long - pass # TODO + dl = FakeDownloader() + ie = YoutubeChannelIE(dl) + #test paginated channel + result = ie.extract('https://www.youtube.com/channel/UCKfVa3S1e4PHvxWcwyMMg8w')[0] + self.assertTrue(len(result['entries']) > 90) + #test autogenerated channel + result = ie.extract('https://www.youtube.com/channel/HCtnHdj3df7iM/videos')[0] + self.assertTrue(len(result['entries']) > 20) def test_youtube_user(self): dl = FakeDownloader()