2013-07-29 12:07:38 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								#!/usr/bin/env python 
							 
						 
					
						
							
								
									
										
										
										
											2013-09-21 12:45:53 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								# encoding: utf-8 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-29 12:07:38 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								from  __future__  import  unicode_literals 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-07-29 12:07:38 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								# Allow direct execution 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								import  os 
							 
						 
					
						
							
								
									
										
										
										
											2013-10-15 02:00:53 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								import  sys 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								import  unittest 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								sys . path . insert ( 0 ,  os . path . dirname ( os . path . dirname ( os . path . abspath ( __file__ ) ) ) ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-03-23 16:06:03 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								from  test . helper  import  ( 
							 
						 
					
						
							
								
									
										
										
										
											2014-05-05 03:12:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    assertRegexpMatches , 
							 
						 
					
						
							
								
									
										
										
										
											2014-03-23 16:06:03 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    expect_info_dict , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    FakeYDL , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								) 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-29 12:07:38 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-09-21 12:45:53 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								from  youtube_dl . extractor  import  ( 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-16 22:18:27 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    AcademicEarthCourseIE , 
							 
						 
					
						
							
								
									
										
										
										
											2013-09-21 12:45:53 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    DailymotionPlaylistIE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    DailymotionUserIE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    VimeoChannelIE , 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-01 22:36:18 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    VimeoUserIE , 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-06 21:47:32 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    VimeoAlbumIE , 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-06 22:01:41 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    VimeoGroupsIE , 
							 
						 
					
						
							
								
									
										
										
										
											2014-05-10 23:18:20 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    VineUserIE , 
							 
						 
					
						
							
								
									
										
										
										
											2013-09-21 12:45:53 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    UstreamChannelIE , 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-09 18:06:09 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    SoundcloudSetIE , 
							 
						 
					
						
							
								
									
										
										
										
											2013-09-21 12:45:53 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    SoundcloudUserIE , 
							 
						 
					
						
							
								
									
										
										
										
											2014-05-05 03:12:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    SoundcloudPlaylistIE , 
							 
						 
					
						
							
								
									
										
										
										
											2013-09-21 13:50:52 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    LivestreamIE , 
							 
						 
					
						
							
								
									
										
										
										
											2013-10-11 14:33:26 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    NHLVideocenterIE , 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-02 19:50:57 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    BambuserChannelIE , 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-02 20:10:19 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    BandcampAlbumIE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    SmotriCommunityIE , 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-19 05:53:34 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    SmotriUserIE , 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-25 08:40:09 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    IviCompilationIE , 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-01 12:42:59 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    ImdbListIE , 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:35:34 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    KhanAcademyIE , 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-17 02:53:34 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    EveryonesMixtapeIE , 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-28 08:25:56 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    RutubeChannelIE , 
							 
						 
					
						
							
								
									
										
										
										
											2014-02-06 03:29:10 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    GoogleSearchIE , 
							 
						 
					
						
							
								
									
										
										
										
											2014-02-03 15:19:40 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    GenericIE , 
							 
						 
					
						
							
								
									
										
										
										
											2014-03-05 13:22:10 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    TEDIE , 
							 
						 
					
						
							
								
									
										
										
										
											2014-03-22 15:15:01 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    ToypicsUserIE , 
							 
						 
					
						
							
								
									
										
										
										
											2014-03-23 00:16:35 +06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    XTubeUserIE , 
							 
						 
					
						
							
								
									
										
										
										
											2014-03-23 16:06:03 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    InstagramUserIE , 
							 
						 
					
						
							
								
									
										
										
										
											2014-04-03 05:56:28 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    CSpanIE , 
							 
						 
					
						
							
								
									
										
										
										
											2014-04-13 03:19:56 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    AolIE , 
							 
						 
					
						
							
								
									
										
										
										
											2013-09-21 12:45:53 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								) 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-29 12:07:38 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								class  TestPlaylists ( unittest . TestCase ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    def  assertIsPlaylist ( self ,  info ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        """ Make sure the info has  ' _type '  set to  ' playlist ' """ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( info [ ' _type ' ] ,  ' playlist ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    def  test_dailymotion_playlist ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  DailymotionPlaylistIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://www.dailymotion.com/playlist/xv4bw_nqtv_sport/1#video=xl8v3q ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' SPORT ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-29 12:07:38 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  >  20 ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-09-21 13:50:52 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-09-21 12:45:53 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_dailymotion_user ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  DailymotionUserIE ( dl ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-02-15 13:17:31 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' https://www.dailymotion.com/user/nqtv ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-09-21 12:45:53 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-02-15 13:17:31 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Rémi Gaillard ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  100 ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-29 12:07:38 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-07-29 13:12:09 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_vimeo_channel ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  VimeoChannelIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://vimeo.com/channels/tributes ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Vimeo Tributes ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-29 13:12:09 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  >  24 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-12-01 22:36:18 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_vimeo_user ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  VimeoUserIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://vimeo.com/nkistudio/videos ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Nki ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-01 22:36:18 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  >  65 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-12-06 21:47:32 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_vimeo_album ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  VimeoAlbumIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://vimeo.com/album/2632481 ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Staff Favorites: November 2013 ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-06 21:47:32 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  >  12 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-12-06 22:01:41 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_vimeo_groups ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  VimeoGroupsIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://vimeo.com/groups/rolexawards ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Rolex Awards for Enterprise ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-06 22:01:41 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  >  72 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-05-10 23:18:20 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_vine_user ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  VineUserIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' https://vine.co/Visa ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  50 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-09-13 19:55:49 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_ustream_channel ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  UstreamChannelIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://www.ustream.tv/channel/young-americans-for-liberty ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' 5124905 ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-03-09 12:03:49 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  6 ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-09-13 19:55:49 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-11-09 18:06:09 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_soundcloud_set ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  SoundcloudSetIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' https://soundcloud.com/the-concept-band/sets/the-royal-concept-ep ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' The Royal Concept EP ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-09 18:06:09 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  6 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-09-14 21:41:49 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_soundcloud_user ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  SoundcloudUserIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' https://soundcloud.com/the-concept-band ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' 9615865 ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-09-14 21:41:49 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  12 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-05-05 03:12:41 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_soundcloud_playlist ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  SoundcloudPlaylistIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://api.soundcloud.com/playlists/4110309 ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' 4110309 ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' TILT Brass - Bowery Poetry Club, August  \' 03 [Non-Site SCR 02] ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        assertRegexpMatches ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            self ,  result [ ' description ' ] ,  r ' TILT Brass - Bowery Poetry Club ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( len ( result [ ' entries ' ] ) ,  6 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-09-21 13:50:52 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_livestream_event ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  LivestreamIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://new.livestream.com/tedx/cityenglish ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' TEDCity2.0 (English) ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-09-21 13:50:52 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  4 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-10-11 14:33:26 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_nhl_videocenter ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  NHLVideocenterIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://video.canucks.nhl.com/videocenter/console?catid=999 ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' 999 ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Highlights ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-10-11 14:33:26 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( len ( result [ ' entries ' ] ) ,  12 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-11-02 19:50:57 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_bambuser_channel ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  BambuserChannelIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://bambuser.com/channel/pixelversity ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' pixelversity ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-22 21:26:31 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  60 ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-02 19:50:57 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-11-22 16:05:14 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_bandcamp_album ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  BandcampAlbumIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://mpallante.bandcamp.com/album/nightmare-night-ep ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Nightmare Night EP ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-22 16:05:14 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  4 ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-02 20:10:19 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    def  test_smotri_community ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  SmotriCommunityIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://smotri.com/community/video/kommuna ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' kommuna ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' КПРФ ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-02 20:10:19 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  4 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    def  test_smotri_user ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  SmotriUserIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://smotri.com/user/inspector ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' inspector ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Inspector ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-02 20:10:19 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  9 ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-22 16:05:14 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-12-16 22:18:27 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_AcademicEarthCourse ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  AcademicEarthCourseIE ( dl ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-02-24 14:18:12 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://academicearth.org/playlists/laws-of-nature/ ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-16 22:18:27 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-02-24 14:18:12 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' laws-of-nature ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Laws of Nature ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' description ' ] , u ' Introduce yourself to the laws of nature with these free online college lectures from Yale, Harvard, and MIT. ' ) # u"Today's websites are increasingly dynamic. Pages are no longer static HTML files but instead generated by scripts and database calls. User interfaces are more seamless, with technologies like Ajax replacing traditional page reloads. This course teaches students how to build dynamic websites with Ajax and with Linux, Apache, MySQL, and PHP (LAMP), one of today's most popular frameworks. Students learn how to set up domain names with DNS, how to structure pages with XHTML and CSS, how to program in JavaScript and PHP, how to configure Apache and MySQL, how to design and query databases with SQL, how to use Ajax with both XML and JSON, and how to build mashups. The course explores issues of security, scalability, and cross-browser support and also discusses enterprise-level deployments of websites, including third-party hosting, virtualization, colocation in data centers, firewalling, and load-balancing.") 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( len ( result [ ' entries ' ] ) ,  4 ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-19 05:39:22 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    def  test_ivi_compilation ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  IviCompilationIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://www.ivi.ru/watch/dezhurnyi_angel ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' dezhurnyi_angel ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Дежурный ангел (2010 - 2012) ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-04-20 03:06:50 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  23 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-12-19 05:39:22 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_ivi_compilation_season ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  IviCompilationIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://www.ivi.ru/watch/dezhurnyi_angel/season2 ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' dezhurnyi_angel/season2 ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Дежурный ангел (2010 - 2012) 2 сезон ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-04-20 03:06:50 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  7 ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-25 08:40:09 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    def  test_imdb_list ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  ImdbListIE ( dl ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-28 09:13:08 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://www.imdb.com/list/JFs9NWw6XI0 ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-25 08:40:09 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-28 09:13:08 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' JFs9NWw6XI0 ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' March 23, 2012 Releases ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( len ( result [ ' entries ' ] ) ,  7 ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-16 22:18:27 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:35:34 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_khanacademy_topic ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  KhanAcademyIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' https://www.khanacademy.org/math/applied-math/cryptography ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:41:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' cryptography ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Journey into cryptography ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' description ' ] ,  ' How have humans protected their secret messages through history? What has changed today? ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-07 09:35:34 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-01-17 02:53:34 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_EveryonesMixtape ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  EveryonesMixtapeIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://everyonesmixtape.com/#/mix/m7m0jJAbMQi ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' m7m0jJAbMQi ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Driving ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( len ( result [ ' entries ' ] ) ,  24 ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-28 08:25:56 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    def  test_rutube_channel ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  RutubeChannelIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://rutube.ru/tags/video/1409 ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' 1409 ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  34 ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-17 02:53:34 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-02-03 15:19:40 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_multiple_brightcove_videos ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        # https://github.com/rg3/youtube-dl/issues/2283 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  GenericIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://www.newyorker.com/online/blogs/newsdesk/2014/01/always-never-nuclear-command-and-control.html ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' always-never-nuclear-command-and-control ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Always/Never: A Little-Seen Movie About Nuclear Command and Control : The New Yorker ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( len ( result [ ' entries ' ] ) ,  3 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-02-06 03:29:10 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_GoogleSearch ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  GoogleSearchIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' gvsearch15:python language ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' python language ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' python language ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-03-13 16:52:13 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( len ( result [ ' entries ' ] ) ,  15 ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-12-16 22:18:27 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-02-20 13:14:05 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_generic_rss_feed ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  GenericIE ( dl ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-03-10 13:03:39 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://phihag.de/2014/youtube-dl/rss.xml ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-02-20 13:14:05 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-03-10 13:03:39 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' http://phihag.de/2014/youtube-dl/rss.xml ' ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-02-20 13:14:05 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Zero Punctuation ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  >  10 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-03-05 13:22:10 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_ted_playlist ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  TEDIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://www.ted.com/playlists/who_are_the_hackers ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' 10 ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' title ' ] ,  ' Who are the hackers? ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  6 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-03-22 15:15:01 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_toypics_user ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  ToypicsUserIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( ' http://videos.toypics.net/Mikey ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' Mikey ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  17 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-03-23 00:16:35 +06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    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 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-03-23 16:06:03 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    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 ' , 
							 
						 
					
						
							
								
									
										
										
										
											2014-03-24 01:40:09 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            ' timestamp ' :  1387486713 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            ' upload_date ' :  ' 20131219 ' , 
							 
						 
					
						
							
								
									
										
										
										
											2014-03-23 16:06:03 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        expect_info_dict ( self ,  EXPECTED ,  test_video ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-04-03 05:56:28 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    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 ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        whole_duration  =  sum ( e [ ' duration ' ]  for  e  in  result [ ' entries ' ] ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( whole_duration ,  14855 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-04-13 03:19:56 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    def  test_aol_playlist ( self ) : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        dl  =  FakeYDL ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        ie  =  AolIE ( dl ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        result  =  ie . extract ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            ' http://on.aol.com/playlist/brace-yourself---todays-weirdest-news-152147?icid=OnHomepageC4_Omg_Img#_videoid=518184316 ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertIsPlaylist ( result ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( result [ ' id ' ] ,  ' 152147 ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertEqual ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            result [ ' title ' ] ,  ' Brace Yourself - Today \' s Weirdest News ' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        self . assertTrue ( len ( result [ ' entries ' ] )  > =  10 ) 
							 
						 
					
						
							
								
									
										
										
										
											2014-03-23 16:06:03 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-07-29 12:07:38 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								if  __name__  ==  ' __main__ ' : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    unittest . main ( )