]> jfr.im git - yt-dlp.git/blobdiff - test/test_youtube_lists.py
[extractor/youtube:tab] Update tab handling for redesign (#5439)
[yt-dlp.git] / test / test_youtube_lists.py
index c2dd0ac3085ad9fb82539c0e7685ddb409c920d9..b3f323e21e52037fcc8f2a2b928ff38ee37e14ba 100644 (file)
@@ -10,6 +10,7 @@
 
 from test.helper import FakeYDL, is_download_test
 from yt_dlp.extractor import YoutubeIE, YoutubeTabIE
+from yt_dlp.utils import ExtractorError
 
 
 @is_download_test
@@ -53,6 +54,18 @@ def test_youtube_flat_playlist_extraction(self):
         self.assertEqual(video['duration'], 10)
         self.assertEqual(video['uploader'], 'Philipp Hagemeister')
 
+    def test_youtube_channel_no_uploads(self):
+        dl = FakeYDL()
+        dl.params['extract_flat'] = True
+        ie = YoutubeTabIE(dl)
+        # no uploads
+        with self.assertRaisesRegex(ExtractorError, r'no uploads'):
+            ie.extract('https://www.youtube.com/channel/UC2yXPzFejc422buOIzn_0CA')
+
+        # no uploads and no UCID given
+        with self.assertRaisesRegex(ExtractorError, r'no uploads'):
+            ie.extract('https://www.youtube.com/news')
+
 
 if __name__ == '__main__':
     unittest.main()