tests: don't run the test if any of the extractors listed in the 'add_ie' field is marked as not working
This commit is contained in:
		@@ -31,6 +31,7 @@ from youtube_dl.utils import (
 | 
			
		||||
    ExtractorError,
 | 
			
		||||
    UnavailableVideoError,
 | 
			
		||||
)
 | 
			
		||||
from youtube_dl.extractor import get_info_extractor
 | 
			
		||||
 | 
			
		||||
RETRIES = 3
 | 
			
		||||
 | 
			
		||||
@@ -63,9 +64,10 @@ def generator(test_case):
 | 
			
		||||
 | 
			
		||||
    def test_template(self):
 | 
			
		||||
        ie = youtube_dl.extractor.get_info_extractor(test_case['name'])
 | 
			
		||||
        other_ies = [get_info_extractor(ie_key) for ie_key in test_case.get('add_ie', [])]
 | 
			
		||||
        def print_skipping(reason):
 | 
			
		||||
            print('Skipping %s: %s' % (test_case['name'], reason))
 | 
			
		||||
        if not ie._WORKING:
 | 
			
		||||
        if not ie.working():
 | 
			
		||||
            print_skipping('IE marked as not _WORKING')
 | 
			
		||||
            return
 | 
			
		||||
        if 'playlist' not in test_case:
 | 
			
		||||
@@ -77,6 +79,10 @@ def generator(test_case):
 | 
			
		||||
        if 'skip' in test_case:
 | 
			
		||||
            print_skipping(test_case['skip'])
 | 
			
		||||
            return
 | 
			
		||||
        for other_ie in other_ies:
 | 
			
		||||
            if not other_ie.working():
 | 
			
		||||
                print_skipping(u'test depends on %sIE, marked as not WORKING' % other_ie.ie_key())
 | 
			
		||||
                return
 | 
			
		||||
 | 
			
		||||
        params = get_params(test_case.get('params', {}))
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -33,6 +33,7 @@ class GenericIE(InfoExtractor):
 | 
			
		||||
        },
 | 
			
		||||
        # embedded vimeo video
 | 
			
		||||
        {
 | 
			
		||||
            u'add_ie': ['Vimeo'],
 | 
			
		||||
            u'url': u'http://skillsmatter.com/podcast/home/move-semanticsperfect-forwarding-and-rvalue-references',
 | 
			
		||||
            u'file': u'22444065.mp4',
 | 
			
		||||
            u'md5': u'2903896e23df39722c33f015af0666e2',
 | 
			
		||||
@@ -44,6 +45,7 @@ class GenericIE(InfoExtractor):
 | 
			
		||||
        },
 | 
			
		||||
        # bandcamp page with custom domain
 | 
			
		||||
        {
 | 
			
		||||
            u'add_ie': ['Bandcamp'],
 | 
			
		||||
            u'url': u'http://bronyrock.com/track/the-pony-mash',
 | 
			
		||||
            u'file': u'3235767654.mp3',
 | 
			
		||||
            u'info_dict': {
 | 
			
		||||
 
 | 
			
		||||
@@ -26,6 +26,7 @@ class MTVIE(InfoExtractor):
 | 
			
		||||
            },
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            u'add_ie': ['Vevo'],
 | 
			
		||||
            u'url': u'http://www.mtv.com/videos/taylor-swift/916187/everything-has-changed-ft-ed-sheeran.jhtml',
 | 
			
		||||
            u'file': u'USCJY1331283.mp4',
 | 
			
		||||
            u'md5': u'73b4e7fcadd88929292fe52c3ced8caf',
 | 
			
		||||
 
 | 
			
		||||
@@ -7,6 +7,7 @@ class SlashdotIE(InfoExtractor):
 | 
			
		||||
    _VALID_URL = r'https?://tv.slashdot.org/video/\?embed=(?P<id>.*?)(&|$)'
 | 
			
		||||
 | 
			
		||||
    _TEST = {
 | 
			
		||||
        u'add_ie': ['Ooyala'],
 | 
			
		||||
        u'url': u'http://tv.slashdot.org/video/?embed=JscHMzZDplD0p-yNLOzTfzC3Q3xzJaUz',
 | 
			
		||||
        u'file': u'JscHMzZDplD0p-yNLOzTfzC3Q3xzJaUz.mp4',
 | 
			
		||||
        u'md5': u'd2222e7a4a4c1541b3e0cf732fb26735',
 | 
			
		||||
 
 | 
			
		||||
@@ -13,6 +13,7 @@ class WeiboIE(InfoExtractor):
 | 
			
		||||
    _VALID_URL = r'https?://video\.weibo\.com/v/weishipin/t_(?P<id>.+?)\.htm'
 | 
			
		||||
 | 
			
		||||
    _TEST = {
 | 
			
		||||
        u'add_ie': ['Sina'],
 | 
			
		||||
        u'url': u'http://video.weibo.com/v/weishipin/t_zjUw2kZ.htm',
 | 
			
		||||
        u'file': u'98322879.flv',
 | 
			
		||||
        u'info_dict': {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user