class TestDownload(unittest.TestCase):
+ maxDiff = None
def setUp(self):
self.parameters = parameters
self.defs = defs
def generator(test_case):
def test_template(self):
- ie = getattr(youtube_dl.InfoExtractors, test_case['name'] + 'IE')
+ ie = youtube_dl.InfoExtractors.get_info_extractor(test_case['name'])#getattr(youtube_dl.InfoExtractors, test_case['name'] + 'IE')
if not ie._WORKING:
print('Skipping: IE marked as not _WORKING')
return
params.update(test_case.get('params', {}))
fd = FileDownloader(params)
- fd.add_info_extractor(ie())
- for ien in test_case.get('add_ie', []):
- fd.add_info_extractor(getattr(youtube_dl.InfoExtractors, ien + 'IE')())
+ for ie in youtube_dl.InfoExtractors.gen_extractors():
+ fd.add_info_extractor(ie)
finished_hook_called = set()
def _hook(status):
if status['status'] == 'finished':
if retry == RETRIES: raise
# Check if the exception is not a network related one
- if not err.exc_info[0] in (ZeroDivisionError, compat_urllib_error.URLError, socket.timeout):
+ if not err.exc_info[0] in (compat_urllib_error.URLError, socket.timeout, UnavailableVideoError):
raise
print('Retrying: {0} failed tries\n\n##########\n\n'.format(retry))