diff options
author | Philipp Hagemeister <phihag@phihag.de> | 2013-06-27 00:09:05 +0200 |
---|---|---|
committer | Philipp Hagemeister <phihag@phihag.de> | 2013-06-27 00:09:05 +0200 |
commit | 112da0a0ced71d56db8a1f02a43197b78ca0a851 (patch) | |
tree | 5e55fba26faa53b09b19ef17b8a9c973c1b4a8aa /test/helper.py | |
parent | bcd606c0feb565b260e0231a655c6fc16e439698 (diff) |
Simplify FakeYDL
Diffstat (limited to 'test/helper.py')
-rw-r--r-- | test/helper.py | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/test/helper.py b/test/helper.py new file mode 100644 index 000000000..842ffc2fd --- /dev/null +++ b/test/helper.py @@ -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)
\ No newline at end of file |