From a3acea3e07dba03a22dc35ca17ad83baa82e3729 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Fri, 5 Sep 2014 21:05:05 +0200 Subject: [PATCH] Issue #22340: Fix Python 3 warnings in Python 2 tests --- Lib/idlelib/idle_test/test_calltips.py | 2 +- Lib/sqlite3/test/dbapi.py | 4 ++- Lib/sqlite3/test/types.py | 10 ++++-- Lib/sqlite3/test/userfunctions.py | 20 +++++++----- Lib/test/test_collections.py | 43 ++++++++++++++++---------- Lib/test/test_hash.py | 3 +- Lib/test/test_hmac.py | 16 +++++----- Lib/test/test_ssl.py | 3 +- 8 files changed, 63 insertions(+), 38 deletions(-) diff --git a/Lib/idlelib/idle_test/test_calltips.py b/Lib/idlelib/idle_test/test_calltips.py index 83718090c4fb..58ac28bde4ec 100644 --- a/Lib/idlelib/idle_test/test_calltips.py +++ b/Lib/idlelib/idle_test/test_calltips.py @@ -163,7 +163,7 @@ class Get_entityTest(unittest.TestCase): # In 3.x, get_entity changed from 'instance method' to module function # since 'self' not used. Use dummy instance until change 2.7 also. def test_bad_entity(self): - self.assertIsNone(CTi.get_entity('1/0')) + self.assertIsNone(CTi.get_entity('1//0')) def test_good_entity(self): self.assertIs(CTi.get_entity('int'), int) diff --git a/Lib/sqlite3/test/dbapi.py b/Lib/sqlite3/test/dbapi.py index c356d4706c47..615ebf51069b 100644 --- a/Lib/sqlite3/test/dbapi.py +++ b/Lib/sqlite3/test/dbapi.py @@ -24,6 +24,7 @@ import unittest import sys import sqlite3 as sqlite +from test import test_support try: import threading except ImportError: @@ -653,7 +654,8 @@ class ConstructorTests(unittest.TestCase): ts = sqlite.TimestampFromTicks(42) def CheckBinary(self): - b = sqlite.Binary(chr(0) + "'") + with test_support.check_py3k_warnings(): + b = sqlite.Binary(chr(0) + "'") class ExtensionTests(unittest.TestCase): def CheckScriptStringSql(self): diff --git a/Lib/sqlite3/test/types.py b/Lib/sqlite3/test/types.py index 400a4f240866..a31446eaa6b6 100644 --- a/Lib/sqlite3/test/types.py +++ b/Lib/sqlite3/test/types.py @@ -24,6 +24,7 @@ import datetime import unittest import sqlite3 as sqlite +from test import test_support try: import zlib except ImportError: @@ -67,7 +68,8 @@ class SqliteTypeTests(unittest.TestCase): self.assertEqual(row[0], val) def CheckBlob(self): - val = buffer("Guglhupf") + with test_support.check_py3k_warnings(): + val = buffer("Guglhupf") self.cur.execute("insert into test(b) values (?)", (val,)) self.cur.execute("select b from test") row = self.cur.fetchone() @@ -231,7 +233,8 @@ class DeclTypesTests(unittest.TestCase): def CheckBlob(self): # default - val = buffer("Guglhupf") + with test_support.check_py3k_warnings(): + val = buffer("Guglhupf") self.cur.execute("insert into test(bin) values (?)", (val,)) self.cur.execute("select bin from test") row = self.cur.fetchone() @@ -347,7 +350,8 @@ class BinaryConverterTests(unittest.TestCase): def CheckBinaryInputForConverter(self): testdata = "abcdefg" * 10 - result = self.con.execute('select ? as "x [bin]"', (buffer(zlib.compress(testdata)),)).fetchone()[0] + with test_support.check_py3k_warnings(): + result = self.con.execute('select ? as "x [bin]"', (buffer(zlib.compress(testdata)),)).fetchone()[0] self.assertEqual(testdata, result) class DateTimeTests(unittest.TestCase): diff --git a/Lib/sqlite3/test/userfunctions.py b/Lib/sqlite3/test/userfunctions.py index 634812d49d6c..1d1915187965 100644 --- a/Lib/sqlite3/test/userfunctions.py +++ b/Lib/sqlite3/test/userfunctions.py @@ -24,6 +24,7 @@ import unittest import sqlite3 as sqlite +from test import test_support def func_returntext(): return "foo" @@ -36,7 +37,8 @@ def func_returnfloat(): def func_returnnull(): return None def func_returnblob(): - return buffer("blob") + with test_support.check_py3k_warnings(): + return buffer("blob") def func_returnlonglong(): return 1<<31 def func_raiseexception(): @@ -202,8 +204,9 @@ class FunctionTests(unittest.TestCase): cur = self.con.cursor() cur.execute("select returnblob()") val = cur.fetchone()[0] - self.assertEqual(type(val), buffer) - self.assertEqual(val, buffer("blob")) + with test_support.check_py3k_warnings(): + self.assertEqual(type(val), buffer) + self.assertEqual(val, buffer("blob")) def CheckFuncReturnLongLong(self): cur = self.con.cursor() @@ -246,7 +249,8 @@ class FunctionTests(unittest.TestCase): def CheckParamBlob(self): cur = self.con.cursor() - cur.execute("select isblob(?)", (buffer("blob"),)) + with test_support.check_py3k_warnings(): + cur.execute("select isblob(?)", (buffer("blob"),)) val = cur.fetchone()[0] self.assertEqual(val, 1) @@ -269,8 +273,9 @@ class AggregateTests(unittest.TestCase): b blob ) """) - cur.execute("insert into test(t, i, f, n, b) values (?, ?, ?, ?, ?)", - ("foo", 5, 3.14, None, buffer("blob"),)) + with test_support.check_py3k_warnings(): + cur.execute("insert into test(t, i, f, n, b) values (?, ?, ?, ?, ?)", + ("foo", 5, 3.14, None, buffer("blob"),)) self.con.create_aggregate("nostep", 1, AggrNoStep) self.con.create_aggregate("nofinalize", 1, AggrNoFinalize) @@ -362,7 +367,8 @@ class AggregateTests(unittest.TestCase): def CheckAggrCheckParamBlob(self): cur = self.con.cursor() - cur.execute("select checkType('blob', ?)", (buffer("blob"),)) + with test_support.check_py3k_warnings(): + cur.execute("select checkType('blob', ?)", (buffer("blob"),)) val = cur.fetchone()[0] self.assertEqual(val, 1) diff --git a/Lib/test/test_collections.py b/Lib/test/test_collections.py index de4ba86df844..6c9c407025c9 100644 --- a/Lib/test/test_collections.py +++ b/Lib/test/test_collections.py @@ -8,13 +8,14 @@ import pickle, cPickle, copy from random import randrange, shuffle import keyword import re -import sets import sys from collections import Hashable, Iterable, Iterator from collections import Sized, Container, Callable from collections import Set, MutableSet from collections import Mapping, MutableMapping from collections import Sequence, MutableSequence +with test_support.check_warnings(('', DeprecationWarning)): + import sets TestNT = namedtuple('TestNT', 'x y z') # type used for pickle tests @@ -713,10 +714,12 @@ class TestCollectionABCs(ABCTestCase): self.assertTrue(r1 < r3) self.assertFalse(r1 < r1) self.assertFalse(r1 < r2) - # python 2 only, cross-type compares will succeed - f1 < l3 - f1 < l1 - f1 < l2 + + with test_support.check_py3k_warnings(): + # python 2 only, cross-type compares will succeed + f1 < l3 + f1 < l1 + f1 < l2 # any subset self.assertTrue(f1 <= f3) @@ -728,10 +731,12 @@ class TestCollectionABCs(ABCTestCase): self.assertTrue(r1 <= r3) self.assertTrue(r1 <= r1) self.assertFalse(r1 <= r2) - # python 2 only, cross-type compares will succeed - f1 <= l3 - f1 <= l1 - f1 <= l2 + + with test_support.check_py3k_warnings(): + # python 2 only, cross-type compares will succeed + f1 <= l3 + f1 <= l1 + f1 <= l2 # proper superset self.assertTrue(f3 > f1) @@ -743,10 +748,12 @@ class TestCollectionABCs(ABCTestCase): self.assertTrue(r3 > r1) self.assertFalse(r1 > r1) self.assertFalse(r2 > r1) - # python 2 only, cross-type compares will succeed - f1 > l3 - f1 > l1 - f1 > l2 + + with test_support.check_py3k_warnings(): + # python 2 only, cross-type compares will succeed + f1 > l3 + f1 > l1 + f1 > l2 # any superset self.assertTrue(f3 >= f1) @@ -758,10 +765,12 @@ class TestCollectionABCs(ABCTestCase): self.assertTrue(r3 >= r1) self.assertTrue(r1 >= r1) self.assertFalse(r2 >= r1) - # python 2 only, cross-type compares will succeed - f1 >= l3 - f1 >=l1 - f1 >= l2 + + with test_support.check_py3k_warnings(): + # python 2 only, cross-type compares will succeed + f1 >= l3 + f1 >=l1 + f1 >= l2 # equality self.assertTrue(f1 == f1) diff --git a/Lib/test/test_hash.py b/Lib/test/test_hash.py index dec7dcbd7c8d..c4f7c66ad16e 100644 --- a/Lib/test/test_hash.py +++ b/Lib/test/test_hash.py @@ -215,7 +215,8 @@ class BufferHashRandomizationTests(StringlikeHashRandomizationTests): repr_ = 'buffer("abc")' def test_empty_string(self): - self.assertEqual(hash(buffer("")), 0) + with test_support.check_py3k_warnings(): + self.assertEqual(hash(buffer("")), 0) class DatetimeTests(HashRandomizationTests): def get_hash_command(self, repr_): diff --git a/Lib/test/test_hmac.py b/Lib/test/test_hmac.py index 839d019e4ff8..8f639a383e17 100644 --- a/Lib/test/test_hmac.py +++ b/Lib/test/test_hmac.py @@ -389,10 +389,11 @@ class CompareDigestTestCase(unittest.TestCase): a, b = "fooä", "fooä" self.assertTrue(hmac.compare_digest(a, b)) - # subclasses are supported by ignore __eq__ - class mystr(str): - def __eq__(self, other): - return False + with test_support.check_py3k_warnings(): + # subclasses are supported by ignore __eq__ + class mystr(str): + def __eq__(self, other): + return False a, b = mystr("foobar"), mystr("foobar") self.assertTrue(hmac.compare_digest(a, b)) @@ -401,9 +402,10 @@ class CompareDigestTestCase(unittest.TestCase): a, b = mystr("foobar"), mystr("foobaz") self.assertFalse(hmac.compare_digest(a, b)) - class mybytes(bytes): - def __eq__(self, other): - return False + with test_support.check_py3k_warnings(): + class mybytes(bytes): + def __eq__(self, other): + return False a, b = mybytes(b"foobar"), mybytes(b"foobar") self.assertTrue(hmac.compare_digest(a, b)) diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py index 351925e2306f..eac994f1230e 100644 --- a/Lib/test/test_ssl.py +++ b/Lib/test/test_ssl.py @@ -2365,7 +2365,8 @@ else: # now fetch the same data from the HTTPS server url = 'https://%s:%d/%s' % ( HOST, server.port, os.path.split(CERTFILE)[1]) - f = urllib.urlopen(url) + with support.check_py3k_warnings(): + f = urllib.urlopen(url) try: dlen = f.info().getheader("content-length") if dlen and (int(dlen) > 0): -- 2.47.3