From: Ezio Melotti Date: Wed, 17 Mar 2010 13:52:48 +0000 (+0000) Subject: #7092: silence some more py3k warnings. X-Git-Tag: v2.7b1~339 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d80b4bfd0b291d543c682d7dac0841de0192a238;p=python #7092: silence some more py3k warnings. --- diff --git a/Lib/ctypes/test/test_pep3118.py b/Lib/ctypes/test/test_pep3118.py index a015b74801..f302e122d4 100644 --- a/Lib/ctypes/test/test_pep3118.py +++ b/Lib/ctypes/test/test_pep3118.py @@ -24,7 +24,7 @@ class memoryview(object): else: size = sizeof(ob) for dim in self.shape: - size /= dim + size //= dim self.itemsize = size self.strides = None self.readonly = False diff --git a/Lib/test/test_dict.py b/Lib/test/test_dict.py index 26c1d94fac..4df7388387 100644 --- a/Lib/test/test_dict.py +++ b/Lib/test/test_dict.py @@ -660,11 +660,14 @@ class SubclassMappingTests(mapping_tests.BasicTestMappingProtocol): type2test = Dict def test_main(): - test_support.run_unittest( - DictTest, - GeneralMappingTests, - SubclassMappingTests, - ) + with test_support.check_py3k_warnings( + ('dict(.has_key..| inequality comparisons) not supported in 3.x', + DeprecationWarning)): + test_support.run_unittest( + DictTest, + GeneralMappingTests, + SubclassMappingTests, + ) if __name__ == "__main__": test_main() diff --git a/Lib/test/test_file2k.py b/Lib/test/test_file2k.py index d812927cd4..f692533640 100644 --- a/Lib/test/test_file2k.py +++ b/Lib/test/test_file2k.py @@ -34,13 +34,15 @@ class AutoFileTests(unittest.TestCase): def testAttributes(self): # verify expected attributes exist f = self.f - softspace = f.softspace + with test_support.check_py3k_warnings(): + softspace = f.softspace f.name # merely shouldn't blow up f.mode # ditto f.closed # ditto - # verify softspace is writable - f.softspace = softspace # merely shouldn't blow up + with test_support.check_py3k_warnings(): + # verify softspace is writable + f.softspace = softspace # merely shouldn't blow up # verify the others aren't for attr in 'name', 'mode', 'closed': @@ -100,7 +102,8 @@ class AutoFileTests(unittest.TestCase): def testMethods(self): methods = ['fileno', 'flush', 'isatty', 'next', 'read', 'readinto', 'readline', 'readlines', 'seek', 'tell', 'truncate', - 'write', 'xreadlines', '__iter__'] + 'write', '__iter__'] + deprecated_methods = ['xreadlines'] if sys.platform.startswith('atheos'): methods.remove('truncate') @@ -112,13 +115,17 @@ class AutoFileTests(unittest.TestCase): method = getattr(self.f, methodname) # should raise on closed file self.assertRaises(ValueError, method) + with test_support.check_py3k_warnings(): + for methodname in deprecated_methods: + method = getattr(self.f, methodname) + self.assertRaises(ValueError, method) self.assertRaises(ValueError, self.f.writelines, []) # file is closed, __exit__ shouldn't do anything self.assertEquals(self.f.__exit__(None, None, None), None) # it must also return None if an exception was given try: - 1/0 + 1 // 0 except: self.assertEquals(self.f.__exit__(*sys.exc_info()), None) @@ -218,12 +225,12 @@ class OtherFileTests(unittest.TestCase): try: f = open(TESTFN, bad_mode) except ValueError, msg: - if msg[0] != 0: + if msg.args[0] != 0: s = str(msg) if s.find(TESTFN) != -1 or s.find(bad_mode) == -1: self.fail("bad error message for invalid mode: %s" % s) - # if msg[0] == 0, we're probably on Windows where there may be - # no obvious way to discover why open() failed. + # if msg.args[0] == 0, we're probably on Windows where there may + # be no obvious way to discover why open() failed. else: f.close() self.fail("no error for invalid mode: %s" % bad_mode) diff --git a/Lib/test/test_grammar.py b/Lib/test/test_grammar.py index 12039e7c92..dca5e4aa47 100644 --- a/Lib/test/test_grammar.py +++ b/Lib/test/test_grammar.py @@ -8,7 +8,8 @@ # regression test, the filterwarnings() call has been added to # regrtest.py. -from test.test_support import run_unittest, check_syntax_error +from test.test_support import run_unittest, check_syntax_error, \ + check_py3k_warnings import unittest import sys # testing import * @@ -152,8 +153,9 @@ class GrammarTests(unittest.TestCase): f1(*(), **{}) def f2(one_argument): pass def f3(two, arguments): pass - def f4(two, (compound, (argument, list))): pass - def f5((compound, first), two): pass + # Silence Py3k warning + exec('def f4(two, (compound, (argument, list))): pass') + exec('def f5((compound, first), two): pass') self.assertEquals(f2.func_code.co_varnames, ('one_argument',)) self.assertEquals(f3.func_code.co_varnames, ('two', 'arguments')) if sys.platform.startswith('java'): @@ -172,7 +174,8 @@ class GrammarTests(unittest.TestCase): def v0(*rest): pass def v1(a, *rest): pass def v2(a, b, *rest): pass - def v3(a, (b, c), *rest): return a, b, c, rest + # Silence Py3k warning + exec('def v3(a, (b, c), *rest): return a, b, c, rest') f1() f2(1) @@ -277,9 +280,10 @@ class GrammarTests(unittest.TestCase): d22v(*(1, 2, 3, 4)) d22v(1, 2, *(3, 4, 5)) d22v(1, *(2, 3), **{'d': 4}) - def d31v((x)): pass + # Silence Py3k warning + exec('def d31v((x)): pass') + exec('def d32v((x,)): pass') d31v(1) - def d32v((x,)): pass d32v((1,)) # keyword arguments after *arglist @@ -474,7 +478,7 @@ hello world continue except: raise - if count > 2 or big_hippo <> 1: + if count > 2 or big_hippo != 1: self.fail("continue then break in try/except in loop broken!") test_inner() @@ -536,7 +540,7 @@ hello world if z != 2: self.fail('exec u\'z=1+1\'')""" g = {} exec 'z = 1' in g - if g.has_key('__builtins__'): del g['__builtins__'] + if '__builtins__' in g: del g['__builtins__'] if g != {'z': 1}: self.fail('exec \'z = 1\' in g') g = {} l = {} @@ -544,8 +548,8 @@ hello world import warnings warnings.filterwarnings("ignore", "global statement", module="") exec 'global a; a = 1; b = 2' in g, l - if g.has_key('__builtins__'): del g['__builtins__'] - if l.has_key('__builtins__'): del l['__builtins__'] + if '__builtins__' in g: del g['__builtins__'] + if '__builtins__' in l: del l['__builtins__'] if (g, l) != ({'a':1}, {'b':2}): self.fail('exec ... in g (%s), l (%s)' %(g,l)) @@ -677,7 +681,6 @@ hello world x = (1 == 1) if 1 == 1: pass if 1 != 1: pass - if 1 <> 1: pass if 1 < 1: pass if 1 > 1: pass if 1 <= 1: pass @@ -686,7 +689,10 @@ hello world if 1 is not 1: pass if 1 in (): pass if 1 not in (): pass - if 1 < 1 > 1 == 1 >= 1 <= 1 <> 1 != 1 in 1 not in 1 is 1 is not 1: pass + if 1 < 1 > 1 == 1 >= 1 <= 1 != 1 in 1 not in 1 is 1 is not 1: pass + # Silence Py3k warning + if eval('1 <> 1'): pass + if eval('1 < 1 > 1 == 1 >= 1 <= 1 <> 1 != 1 in 1 not in 1 is 1 is not 1'): pass def testBinaryMaskOps(self): x = 1 & 1 @@ -774,9 +780,10 @@ hello world x = {'one', 'two', 'three'} x = {2, 3, 4,} - x = `x` - x = `1 or 2 or 3` - self.assertEqual(`1,2`, '(1, 2)') + # Silence Py3k warning + x = eval('`x`') + x = eval('`1 or 2 or 3`') + self.assertEqual(eval('`1,2`'), '(1, 2)') x = x x = 'x' @@ -988,7 +995,13 @@ hello world def test_main(): - run_unittest(TokenTests, GrammarTests) + with check_py3k_warnings( + ("backquote not supported", SyntaxWarning), + ("tuple parameter unpacking has been removed", SyntaxWarning), + ("parenthesized argument names are invalid", SyntaxWarning), + ("classic int division", DeprecationWarning), + (".+ not supported in 3.x", DeprecationWarning)): + run_unittest(TokenTests, GrammarTests) if __name__ == '__main__': test_main() diff --git a/Lib/test/test_importhooks.py b/Lib/test/test_importhooks.py index 7fd8c62a22..aa5dd8de6c 100644 --- a/Lib/test/test_importhooks.py +++ b/Lib/test/test_importhooks.py @@ -180,7 +180,7 @@ class ImportHooksTestCase(ImportHooksBaseTestCase): self.assertFalse(hasattr(reloadmodule,'reloaded')) TestImporter.modules['reloadmodule'] = (False, reload_co) - reload(reloadmodule) + imp.reload(reloadmodule) self.assertTrue(hasattr(reloadmodule,'reloaded')) import hooktestpackage.oldabs @@ -247,9 +247,10 @@ class ImportHooksTestCase(ImportHooksBaseTestCase): for n in sys.modules.keys(): if n.startswith(parent): del sys.modules[n] - for mname in mnames: - m = __import__(mname, globals(), locals(), ["__dummy__"]) - m.__loader__ # to make sure we actually handled the import + with test_support.check_py3k_warnings(): + for mname in mnames: + m = __import__(mname, globals(), locals(), ["__dummy__"]) + m.__loader__ # to make sure we actually handled the import def test_main(): diff --git a/Lib/test/test_opcodes.py b/Lib/test/test_opcodes.py index 77090dab89..c93ef86df2 100644 --- a/Lib/test/test_opcodes.py +++ b/Lib/test/test_opcodes.py @@ -1,6 +1,6 @@ # Python test set -- part 2, opcodes -from test.test_support import run_unittest +from test.test_support import run_unittest, check_py3k_warnings import unittest class OpcodeTest(unittest.TestCase): @@ -9,7 +9,7 @@ class OpcodeTest(unittest.TestCase): n = 0 for i in range(10): n = n+i - try: 1/0 + try: 1 // 0 except NameError: pass except ZeroDivisionError: pass except TypeError: pass @@ -110,7 +110,12 @@ class OpcodeTest(unittest.TestCase): def test_main(): - run_unittest(OpcodeTest) + with check_py3k_warnings(("exceptions must derive from BaseException", + DeprecationWarning), + ("catching classes that don't inherit " + "from BaseException is not allowed", + DeprecationWarning)): + run_unittest(OpcodeTest) if __name__ == '__main__': test_main() diff --git a/Lib/test/test_repr.py b/Lib/test/test_repr.py index 494a7c3945..26300d3745 100644 --- a/Lib/test/test_repr.py +++ b/Lib/test/test_repr.py @@ -8,7 +8,7 @@ import os import shutil import unittest -from test.test_support import run_unittest +from test.test_support import run_unittest, check_py3k_warnings from repr import repr as r # Don't shadow builtin repr from repr import Repr @@ -174,7 +174,8 @@ class ReprTests(unittest.TestCase): def test_buffer(self): # XXX doesn't test buffers with no b_base or read-write buffers (see # bufferobject.c). The test is fairly incomplete too. Sigh. - x = buffer('foo') + with check_py3k_warnings(): + x = buffer('foo') self.assertTrue(repr(x).startswith('