diff options
Diffstat (limited to 'test/test_playlists.py')
| -rw-r--r-- | test/test_playlists.py | 55 | 
1 files changed, 53 insertions, 2 deletions
| diff --git a/test/test_playlists.py b/test/test_playlists.py index 4c9c34057..5fb679aa1 100644 --- a/test/test_playlists.py +++ b/test/test_playlists.py @@ -9,8 +9,10 @@ import sys  import unittest  sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) -from test.helper import FakeYDL - +from test.helper import ( +    expect_info_dict, +    FakeYDL, +)  from youtube_dl.extractor import (      AcademicEarthCourseIE, @@ -38,6 +40,9 @@ from youtube_dl.extractor import (      GenericIE,      TEDIE,      ToypicsUserIE, +    XTubeUserIE, +    InstagramUserIE, +    CSpanIE,  ) @@ -278,5 +283,51 @@ class TestPlaylists(unittest.TestCase):          self.assertEqual(result['id'], 'Mikey')          self.assertTrue(len(result['entries']) >= 17) +    def test_xtube_user(self): +        dl = FakeYDL() +        ie = XTubeUserIE(dl) +        result = ie.extract('http://www.xtube.com/community/profile.php?user=greenshowers') +        self.assertIsPlaylist(result) +        self.assertEqual(result['id'], 'greenshowers') +        self.assertTrue(len(result['entries']) >= 155) + +    def test_InstagramUser(self): +        dl = FakeYDL() +        ie = InstagramUserIE(dl) +        result = ie.extract('http://instagram.com/porsche') +        self.assertIsPlaylist(result) +        self.assertEqual(result['id'], 'porsche') +        self.assertTrue(len(result['entries']) >= 2) +        test_video = next( +            e for e in result['entries'] +            if e['id'] == '614605558512799803_462752227') +        dl.add_default_extra_info(test_video, ie, '(irrelevant URL)') +        dl.process_video_result(test_video, download=False) +        EXPECTED = { +            'id': '614605558512799803_462752227', +            'ext': 'mp4', +            'title': '#Porsche Intelligent Performance.', +            'thumbnail': 're:^https?://.*\.jpg', +            'uploader': 'Porsche', +            'uploader_id': 'porsche', +            'timestamp': 1387486713, +            'upload_date': '20131219', +        } +        expect_info_dict(self, EXPECTED, test_video) + +    def test_CSpan_playlist(self): +        dl = FakeYDL() +        ie = CSpanIE(dl) +        result = ie.extract( +            'http://www.c-span.org/video/?318608-1/gm-ignition-switch-recall') +        self.assertIsPlaylist(result) +        self.assertEqual(result['id'], '342759') +        self.assertEqual( +            result['title'], 'General Motors Ignition Switch Recall') +        self.assertEqual(len(result['entries']), 9) +        whole_duration = sum(e['duration'] for e in result['entries']) +        self.assertEqual(whole_duration, 14855) + +  if __name__ == '__main__':      unittest.main() | 
