Respect age_limit when listing extractors (Fixes #4653)
This commit is contained in:
		| @@ -82,18 +82,8 @@ class FakeYDL(YoutubeDL): | ||||
|  | ||||
| def gettestcases(include_onlymatching=False): | ||||
|     for ie in youtube_dl.extractor.gen_extractors(): | ||||
|         t = getattr(ie, '_TEST', None) | ||||
|         if t: | ||||
|             assert not hasattr(ie, '_TESTS'), \ | ||||
|                 '%s has _TEST and _TESTS' % type(ie).__name__ | ||||
|             tests = [t] | ||||
|         else: | ||||
|             tests = getattr(ie, '_TESTS', []) | ||||
|         for t in tests: | ||||
|             if not include_onlymatching and t.get('only_matching', False): | ||||
|                 continue | ||||
|             t['name'] = type(ie).__name__[:-len('IE')] | ||||
|             yield t | ||||
|         for tc in ie.get_testcases(include_onlymatching): | ||||
|             yield tc | ||||
|  | ||||
|  | ||||
| md5 = lambda s: hashlib.md5(s.encode('utf-8')).hexdigest() | ||||
|   | ||||
| @@ -16,6 +16,7 @@ import json | ||||
| import xml.etree.ElementTree | ||||
|  | ||||
| from youtube_dl.utils import ( | ||||
|     age_restricted, | ||||
|     args_to_str, | ||||
|     clean_html, | ||||
|     DateRange, | ||||
| @@ -402,5 +403,12 @@ Trying to open render node... | ||||
| Success at /dev/dri/renderD128. | ||||
| ffmpeg version 2.4.4 Copyright (c) 2000-2014 the FFmpeg ...'''), '2.4.4') | ||||
|  | ||||
|     def test_age_restricted(self): | ||||
|         self.assertFalse(age_restricted(None, 10))  # unrestricted content | ||||
|         self.assertFalse(age_restricted(1, None))  # unrestricted policy | ||||
|         self.assertFalse(age_restricted(8, 10)) | ||||
|         self.assertTrue(age_restricted(18, 14)) | ||||
|         self.assertFalse(age_restricted(18, 18)) | ||||
|  | ||||
| if __name__ == '__main__': | ||||
|     unittest.main() | ||||
|   | ||||
		Reference in New Issue
	
	Block a user