From dcddc10a5032996474e157946b00b8df039eebda Mon Sep 17 00:00:00 2001 From: Philipp Hagemeister Date: Wed, 26 Nov 2014 20:01:20 +0100 Subject: [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. --- test/test_unicode_literals.py | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'test/test_unicode_literals.py') diff --git a/test/test_unicode_literals.py b/test/test_unicode_literals.py index a4ba7bad0..2cc431b0b 100644 --- a/test/test_unicode_literals.py +++ b/test/test_unicode_literals.py @@ -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: -- cgit v1.2.3