sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
import youtube_dl.YoutubeDL
-import youtube_dl.extractor
from youtube_dl.utils import *
-DEF_FILE = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'tests.json')
PARAMETERS_FILE = os.path.join(os.path.dirname(os.path.abspath(__file__)), "parameters.json")
RETRIES = 3
with open(fn, 'rb') as f:
return hashlib.md5(f.read()).hexdigest()
-with io.open(DEF_FILE, encoding='utf-8') as deff:
- defs = json.load(deff)
-for ie in youtube_dl.extractor.gen_extractors():
- t = getattr(ie, '_TEST', None)
- if t:
- t['name'] = type(ie).__name__[:-len('IE')]
- defs.append(t)
- for t in getattr(ie, '_TESTS', []):
- t['name'] = type(ie).__name__[:-len('IE')]
- defs.append(t)
-
+from helper import get_testcases
+defs = get_testcases()
with io.open(PARAMETERS_FILE, encoding='utf-8') as pf:
parameters = json.load(pf)
def test_template(self):
ie = youtube_dl.extractor.get_info_extractor(test_case['name'])
+ def print_skipping(reason):
+ print('Skipping %s: %s' % (test_case['name'], reason))
if not ie._WORKING:
- print('Skipping: IE marked as not _WORKING')
+ print_skipping('IE marked as not _WORKING')
return
if 'playlist' not in test_case and not test_case['file']:
- print('Skipping: No output file specified')
+ print_skipping('No output file specified')
return
if 'skip' in test_case:
- print('Skipping: {0}'.format(test_case['skip']))
+ print_skipping(test_case['skip'])
return
params = self.parameters.copy()
params.update(test_case.get('params', {}))
ydl = YoutubeDL(params)
- for ie in youtube_dl.extractor.gen_extractors():
- ydl.add_info_extractor(ie)
+ ydl.add_default_info_extractors()
finished_hook_called = set()
def _hook(status):
if status['status'] == 'finished':