X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=test%2Ftest_unicode_literals.py;h=2cc431b0be5c58db1aaf9ac2de8e495090089f65;hb=5f9b83944da7c531f82ace0ce9275c2661e7187e;hp=94497054adcd4d2bea98ecd7b9ff6e9ded81085e;hpb=a015dce0e243b48ca2124f82bfe40b579412484d;p=youtube-dl.git diff --git a/test/test_unicode_literals.py b/test/test_unicode_literals.py index 94497054a..2cc431b0b 100644 --- a/test/test_unicode_literals.py +++ b/test/test_unicode_literals.py @@ -7,26 +7,32 @@ import unittest 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'): continue + if basename in IGNORED_FILES: + continue + fn = os.path.join(dirpath, basename) with io.open(fn, encoding='utf-8') as inf: code = inf.read() 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: