about summary refs log tree commit diff
diff options
context:
space:
mode:
authorgcmalloc <gcmalloc@gmail.com>2012-10-23 23:48:44 +0200
committergcmalloc <gcmalloc@gmail.com>2012-10-23 23:53:33 +0200
commit28767733814e0490fc426603d207efc966a00af0 (patch)
treeb548c63560920720a94a11e398d9ff6da54063c9
parentece34e8951b05fb6661722d545969e24d82421cd (diff)
downloadyoutube-dl-28767733814e0490fc426603d207efc966a00af0.tar.gz
youtube-dl-28767733814e0490fc426603d207efc966a00af0.tar.xz
youtube-dl-28767733814e0490fc426603d207efc966a00af0.zip
adding test for vimeo, xvideo and soundcloud
-rw-r--r--test/test_download.py64
1 files changed, 53 insertions, 11 deletions
diff --git a/test/test_download.py b/test/test_download.py
index 545afb922..9e0c52551 100644
--- a/test/test_download.py
+++ b/test/test_download.py
@@ -7,6 +7,8 @@ import json
 from youtube_dl.FileDownloader import FileDownloader
 from youtube_dl.InfoExtractors  import YoutubeIE, DailymotionIE
 from youtube_dl.InfoExtractors import  MetacafeIE, BlipTVIE
+from youtube_dl.InfoExtractors import  XVideosIE, VimeoIE
+from youtube_dl.InfoExtractors import  SoundcloudIE
 
 
 class DownloadTest(unittest.TestCase):
@@ -30,10 +32,17 @@ class DownloadTest(unittest.TestCase):
 	BLIP_URL = "http://blip.tv/cbr/cbr-exclusive-gotham-city-imposters-bats-vs-jokerz-short-3-5796352"
 	BLIP_FILE = "5779306.m4v"
 
-	XVIDEO_MD5 = ""
-	XVIDEO_URL = ""
-	XVIDEO_FILE = ""
+	XVIDEO_MD5 = "1ab4dedc01f771cb2a65e91caa801aaf"
+	XVIDEO_URL = "http://www.xvideos.com/video939581/funny_porns_by_s_-1"
+	XVIDEO_FILE = "939581.flv"
 
+	VIMEO_MD5 = "1ab4dedc01f771cb2a65e91caa801aaf"
+	VIMEO_URL = "http://vimeo.com/14160053"
+	VIMEO_FILE = ""
+
+	SOUNDCLOUD_MD5 = "ce3775768ebb6432fa8495d446a078ed"
+	SOUNDCLOUD_URL = "http://soundcloud.com/ethmusic/lostin-powers-she-so-heavy"
+	SOUNDCLOUD_FILE = "n6FLbx6ZzMiu.mp3"
 
 	def test_youtube(self):
 		#let's download a file from youtube
@@ -72,6 +81,33 @@ class DownloadTest(unittest.TestCase):
 		md5_down_file = md5_for_file(DownloadTest.BLIP_FILE)
 		self.assertEqual(md5_down_file, DownloadTest.BLIP_MD5)
 
+	def test_xvideo(self):
+		with open(DownloadTest.PARAMETERS_FILE) as f:
+			fd = FileDownloader(json.load(f))
+		fd.add_info_extractor(XVideosIE())
+		fd.download([DownloadTest.XVIDEO_URL])
+		self.assertTrue(os.path.exists(DownloadTest.XVIDEO_FILE))
+		md5_down_file = md5_for_file(DownloadTest.XVIDEO_FILE)
+		self.assertEqual(md5_down_file, DownloadTest.XVIDEO_MD5)
+
+	def test_vimeo(self):
+		with open(DownloadTest.PARAMETERS_FILE) as f:
+			fd = FileDownloader(json.load(f))
+		fd.add_info_extractor(VimeoIE())
+		fd.download([DownloadTest.VIMEO_URL])
+		self.assertTrue(os.path.exists(DownloadTest.VIMEO_FILE))
+		md5_down_file = md5_for_file(DownloadTest.VIMEO_FILE)
+		self.assertEqual(md5_down_file, DownloadTest.VIMEO_MD5)
+
+	def test_soundcloud(self):
+		with open(DownloadTest.PARAMETERS_FILE) as f:
+			fd = FileDownloader(json.load(f))
+		fd.add_info_extractor(SoundcloudIE())
+		fd.download([DownloadTest.SOUNDCLOUD_URL])
+		self.assertTrue(os.path.exists(DownloadTest.SOUNDCLOUD_FILE))
+		md5_down_file = md5_for_file(DownloadTest.SOUNDCLOUD_FILE)
+		self.assertEqual(md5_down_file, DownloadTest.SOUNDCLOUD_MD5)
+
 	def tearDown(self):
 		if os.path.exists(DownloadTest.YOUTUBE_FILE):
 			os.remove(DownloadTest.YOUTUBE_FILE)
@@ -81,13 +117,19 @@ class DownloadTest(unittest.TestCase):
 			os.remove(DownloadTest.METACAFE_FILE)
 		if os.path.exists(DownloadTest.BLIP_FILE):
 			os.remove(DownloadTest.BLIP_FILE)
+		if os.path.exists(DownloadTest.XVIDEO_FILE):
+			os.remove(DownloadTest.XVIDEO_FILE)
+		if os.path.exists(DownloadTest.VIMEO_FILE):
+			os.remove(DownloadTest.VIMEO_FILE)
+		if os.path.exists(DownloadTest.SOUNDCLOUD_FILE):
+			os.remove(DownloadTest.SOUNDCLOUD_FILE)
 
 def md5_for_file(filename, block_size=2**20):
-    with open(filename) as f:
-        md5 = hashlib.md5()
-        while True:
-            data = f.read(block_size)
-            if not data:
-                break
-            md5.update(data)
-            return md5.hexdigest()
+	with open(filename) as f:
+		md5 = hashlib.md5()
+		while True:
+			data = f.read(block_size)
+			if not data:
+				break
+			md5.update(data)
+			return md5.hexdigest()