mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-31 06:35:12 +00:00 
			
		
		
		
	Simplify FakeYDL
This commit is contained in:
		
							
								
								
									
										33
									
								
								test/helper.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								test/helper.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | ||||
| import io | ||||
| import json | ||||
| import os.path | ||||
|  | ||||
| from youtube_dl import YoutubeDL, YoutubeDLHandler | ||||
| from youtube_dl.utils import ( | ||||
|     compat_cookiejar, | ||||
|     compat_urllib_request, | ||||
| ) | ||||
|  | ||||
| # General configuration (from __init__, not very elegant...) | ||||
| jar = compat_cookiejar.CookieJar() | ||||
| cookie_processor = compat_urllib_request.HTTPCookieProcessor(jar) | ||||
| proxy_handler = compat_urllib_request.ProxyHandler() | ||||
| opener = compat_urllib_request.build_opener(proxy_handler, cookie_processor, YoutubeDLHandler()) | ||||
| compat_urllib_request.install_opener(opener) | ||||
|  | ||||
| PARAMETERS_FILE = os.path.join(os.path.dirname(os.path.abspath(__file__)), "parameters.json") | ||||
| with io.open(PARAMETERS_FILE, encoding='utf-8') as pf: | ||||
|     parameters = json.load(pf) | ||||
|  | ||||
| class FakeYDL(YoutubeDL): | ||||
|     def __init__(self): | ||||
|         self.result = [] | ||||
|         # Different instances of the downloader can't share the same dictionary | ||||
|         # some test set the "sublang" parameter, which would break the md5 checks. | ||||
|         self.params = dict(parameters) | ||||
|     def to_screen(self, s): | ||||
|         print(s) | ||||
|     def trouble(self, s, tb=None): | ||||
|         raise Exception(s) | ||||
|     def download(self, x): | ||||
|         self.result.append(x) | ||||
| @@ -10,30 +10,8 @@ sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from youtube_dl.extractor import YoutubeUserIE, YoutubePlaylistIE, YoutubeIE, YoutubeChannelIE | ||||
| from youtube_dl.utils import * | ||||
| from youtube_dl import YoutubeDL | ||||
|  | ||||
| PARAMETERS_FILE = os.path.join(os.path.dirname(os.path.abspath(__file__)), "parameters.json") | ||||
| with io.open(PARAMETERS_FILE, encoding='utf-8') as pf: | ||||
|     parameters = json.load(pf) | ||||
|  | ||||
| # General configuration (from __init__, not very elegant...) | ||||
| jar = compat_cookiejar.CookieJar() | ||||
| cookie_processor = compat_urllib_request.HTTPCookieProcessor(jar) | ||||
| proxy_handler = compat_urllib_request.ProxyHandler() | ||||
| opener = compat_urllib_request.build_opener(proxy_handler, cookie_processor, YoutubeDLHandler()) | ||||
| compat_urllib_request.install_opener(opener) | ||||
|  | ||||
| class FakeYDL(YoutubeDL): | ||||
|     def __init__(self): | ||||
|         self.result = [] | ||||
|         self.params = parameters | ||||
|     def to_screen(self, s): | ||||
|         print(s) | ||||
|     def trouble(self, s, tb=None): | ||||
|         raise Exception(s) | ||||
|     def extract_info(self, url): | ||||
|         self.result.append(url) | ||||
|         return url | ||||
| from helper import FakeYDL | ||||
|  | ||||
| class TestYoutubeLists(unittest.TestCase): | ||||
|     def assertIsPlaylist(self,info): | ||||
|   | ||||
| @@ -12,31 +12,7 @@ sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from youtube_dl.extractor import YoutubeIE | ||||
| from youtube_dl.utils import * | ||||
| from youtube_dl import YoutubeDL | ||||
|  | ||||
| PARAMETERS_FILE = os.path.join(os.path.dirname(os.path.abspath(__file__)), "parameters.json") | ||||
| with io.open(PARAMETERS_FILE, encoding='utf-8') as pf: | ||||
|     parameters = json.load(pf) | ||||
|  | ||||
| # General configuration (from __init__, not very elegant...) | ||||
| jar = compat_cookiejar.CookieJar() | ||||
| cookie_processor = compat_urllib_request.HTTPCookieProcessor(jar) | ||||
| proxy_handler = compat_urllib_request.ProxyHandler() | ||||
| opener = compat_urllib_request.build_opener(proxy_handler, cookie_processor, YoutubeDLHandler()) | ||||
| compat_urllib_request.install_opener(opener) | ||||
|  | ||||
| class FakeYDL(YoutubeDL): | ||||
|     def __init__(self): | ||||
|         self.result = [] | ||||
|         # Different instances of the downloader can't share the same dictionary | ||||
|         # some test set the "sublang" parameter, which would break the md5 checks. | ||||
|         self.params = dict(parameters) | ||||
|     def to_screen(self, s): | ||||
|         print(s) | ||||
|     def trouble(self, s, tb=None): | ||||
|         raise Exception(s) | ||||
|     def download(self, x): | ||||
|         self.result.append(x) | ||||
| from helper import FakeYDL | ||||
|  | ||||
| md5 = lambda s: hashlib.md5(s.encode('utf-8')).hexdigest() | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Philipp Hagemeister
					Philipp Hagemeister