mirror of
				https://github.com/ytdl-org/youtube-dl.git
				synced 2025-10-29 09:26:20 -07:00 
			
		
		
		
	[test_unicode_literals] Arm unicode_literals check
From now on, the line from __future__ import unicode_literals should be contained in every single Python file lest we run into any more 2.x/3.x issues. Going forward, we're likely to develop on 3.x only and would likely miss subtle bugs otherwise.
This commit is contained in:
		| @@ -1,4 +1,6 @@ | ||||
| #!/usr/bin/env python | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| import os | ||||
| from os.path import dirname as dirn | ||||
| import sys | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| #!/usr/bin/env python | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| """ | ||||
| This script employs a VERY basic heuristic ('porn' in webpage.lower()) to check | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| #!/usr/bin/env python3 | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| import json | ||||
| import sys | ||||
|   | ||||
| @@ -1,4 +1,6 @@ | ||||
| #!/usr/bin/env python3 | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| import hashlib | ||||
| import urllib.request | ||||
| import json | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| #!/usr/bin/env python3 | ||||
| from __future__ import unicode_literals, with_statement | ||||
|  | ||||
| import rsa | ||||
| import json | ||||
| @@ -29,4 +30,5 @@ signature = hexlify(rsa.pkcs1.sign(json.dumps(versions_info, sort_keys=True).enc | ||||
| print('signature: ' + signature) | ||||
|  | ||||
| versions_info['signature'] = signature | ||||
| json.dump(versions_info, open('update/versions.json', 'w'), indent=4, sort_keys=True) | ||||
| with open('update/versions.json', 'w') as versionsf: | ||||
|     json.dump(versions_info, versionsf, indent=4, sort_keys=True) | ||||
|   | ||||
| @@ -1,7 +1,7 @@ | ||||
| #!/usr/bin/env python | ||||
| # coding: utf-8 | ||||
|  | ||||
| from __future__ import with_statement | ||||
| from __future__ import with_statement, unicode_literals | ||||
|  | ||||
| import datetime | ||||
| import glob | ||||
| @@ -13,7 +13,7 @@ year = str(datetime.datetime.now().year) | ||||
| for fn in glob.glob('*.html*'): | ||||
|     with io.open(fn, encoding='utf-8') as f: | ||||
|         content = f.read() | ||||
|     newc = re.sub(u'(?P<copyright>Copyright © 2006-)(?P<year>[0-9]{4})', u'Copyright © 2006-' + year, content) | ||||
|     newc = re.sub(r'(?P<copyright>Copyright © 2006-)(?P<year>[0-9]{4})', 'Copyright © 2006-' + year, content) | ||||
|     if content != newc: | ||||
|         tmpFn = fn + '.part' | ||||
|         with io.open(tmpFn, 'wt', encoding='utf-8') as outf: | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| #!/usr/bin/env python3 | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| import datetime | ||||
| import io | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| #!/usr/bin/env python3 | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| import sys | ||||
| import os | ||||
|   | ||||
| @@ -1,3 +1,5 @@ | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| import io | ||||
| import sys | ||||
| import re | ||||
|   | ||||
| @@ -1,3 +1,4 @@ | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| import io | ||||
| import os.path | ||||
|   | ||||
| @@ -1,4 +1,6 @@ | ||||
| #!/usr/bin/env python | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| import os | ||||
| from os.path import dirname as dirn | ||||
| import sys | ||||
|   | ||||
| @@ -9,14 +9,13 @@ rootDir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) | ||||
|  | ||||
| IGNORED_FILES = [ | ||||
|     'setup.py',  # http://bugs.python.org/issue13943 | ||||
|     'conf.py', | ||||
|     'buildserver.py', | ||||
| ] | ||||
|  | ||||
|  | ||||
| class TestUnicodeLiterals(unittest.TestCase): | ||||
|     def test_all_files(self): | ||||
|         print('Skipping this test (not yet fully implemented)') | ||||
|         return | ||||
|  | ||||
|         for dirpath, _, filenames in os.walk(rootDir): | ||||
|             for basename in filenames: | ||||
|                 if not basename.endswith('.py'): | ||||
| @@ -30,10 +29,10 @@ class TestUnicodeLiterals(unittest.TestCase): | ||||
|  | ||||
|                 if "'" not in code and '"' not in code: | ||||
|                     continue | ||||
|                 imps = 'from __future__ import unicode_literals' | ||||
|                 self.assertTrue( | ||||
|                     imps in code, | ||||
|                     ' %s  missing in %s' % (imps, fn)) | ||||
|                 self.assertRegexpMatches( | ||||
|                     code, | ||||
|                     r'(?:#.*\n*)?from __future__ import (?:[a-z_]+,\s*)*unicode_literals', | ||||
|                     'unicode_literals import  missing in %s' % fn) | ||||
|  | ||||
|                 m = re.search(r'(?<=\s)u[\'"](?!\)|,|$)', code) | ||||
|                 if m is not None: | ||||
|   | ||||
| @@ -1,5 +1,6 @@ | ||||
| #!/usr/bin/env python | ||||
| # coding: utf-8 | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| # Allow direct execution | ||||
| import os | ||||
|   | ||||
| @@ -1,5 +1,6 @@ | ||||
| #!/usr/bin/env python | ||||
| # coding: utf-8 | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| # Allow direct execution | ||||
| import os | ||||
| @@ -32,7 +33,7 @@ params = get_params({ | ||||
| TEST_ID = 'BaW_jenozKc' | ||||
| INFO_JSON_FILE = TEST_ID + '.info.json' | ||||
| DESCRIPTION_FILE = TEST_ID + '.mp4.description' | ||||
| EXPECTED_DESCRIPTION = u'''test chars:  "'/\ä↭𝕐 | ||||
| EXPECTED_DESCRIPTION = '''test chars:  "'/\ä↭𝕐 | ||||
| test URL: https://github.com/rg3/youtube-dl/issues/1892 | ||||
|  | ||||
| This is a test video for youtube-dl. | ||||
| @@ -53,11 +54,11 @@ class TestInfoJSON(unittest.TestCase): | ||||
|         self.assertTrue(os.path.exists(INFO_JSON_FILE)) | ||||
|         with io.open(INFO_JSON_FILE, 'r', encoding='utf-8') as jsonf: | ||||
|             jd = json.load(jsonf) | ||||
|         self.assertEqual(jd['upload_date'], u'20121002') | ||||
|         self.assertEqual(jd['upload_date'], '20121002') | ||||
|         self.assertEqual(jd['description'], EXPECTED_DESCRIPTION) | ||||
|         self.assertEqual(jd['id'], TEST_ID) | ||||
|         self.assertEqual(jd['extractor'], 'youtube') | ||||
|         self.assertEqual(jd['title'], u'''youtube-dl test video "'/\ä↭𝕐''') | ||||
|         self.assertEqual(jd['title'], '''youtube-dl test video "'/\ä↭𝕐''') | ||||
|         self.assertEqual(jd['uploader'], 'Philipp Hagemeister') | ||||
|  | ||||
|         self.assertTrue(os.path.exists(DESCRIPTION_FILE)) | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| #!/usr/bin/env python | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| # Allow direct execution | ||||
| import os | ||||
|   | ||||
| @@ -1,4 +1,5 @@ | ||||
| #!/usr/bin/env python | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| # Execute with | ||||
| # $ python youtube_dl/__main__.py (2.6+) | ||||
|   | ||||
| @@ -1,3 +1,5 @@ | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| __all__ = ['aes_encrypt', 'key_expansion', 'aes_ctr_decrypt', 'aes_cbc_decrypt', 'aes_decrypt_text'] | ||||
|  | ||||
| import base64 | ||||
|   | ||||
| @@ -1,3 +1,5 @@ | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| from .abc import ABCIE | ||||
| from .academicearth import AcademicEarthCourseIE | ||||
| from .addanime import AddAnimeIE | ||||
|   | ||||
| @@ -18,7 +18,7 @@ class BambuserIE(InfoExtractor): | ||||
|     _TEST = { | ||||
|         'url': 'http://bambuser.com/v/4050584', | ||||
|         # MD5 seems to be flaky, see https://travis-ci.org/rg3/youtube-dl/jobs/14051016#L388 | ||||
|         # u'md5': 'fba8f7693e48fd4e8641b3fd5539a641', | ||||
|         # 'md5': 'fba8f7693e48fd4e8641b3fd5539a641', | ||||
|         'info_dict': { | ||||
|             'id': '4050584', | ||||
|             'ext': 'flv', | ||||
|   | ||||
| @@ -1,3 +1,4 @@ | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| from .atomicparsley import AtomicParsleyPP | ||||
| from .ffmpeg import ( | ||||
|   | ||||
| @@ -1,3 +1,5 @@ | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| from ..utils import PostProcessingError | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,3 +1,5 @@ | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| import os | ||||
| import subprocess | ||||
| import sys | ||||
|   | ||||
| @@ -1,2 +1,3 @@ | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| __version__ = '2014.11.26' | ||||
|   | ||||
		Reference in New Issue
	
	Block a user