From: Victor Stinner Date: Wed, 8 Nov 2017 22:45:55 +0000 (-0800) Subject: Fix DeprecationWarning in tests (#4345) X-Git-Tag: v2.7.15rc1~130 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2ce1ef54d30606e61e85526861673bac3faef617;p=python Fix DeprecationWarning in tests (#4345) Define __hash__() in test_functools and test_itertools to fix the following warning: DeprecationWarning: Overriding __eq__ blocks inheritance of __hash__ in 3.x --- diff --git a/Lib/test/test_functools.py b/Lib/test/test_functools.py index b3372ea7c3..2847573035 100644 --- a/Lib/test/test_functools.py +++ b/Lib/test/test_functools.py @@ -609,6 +609,8 @@ class TestTotalOrdering(unittest.TestCase): return self.value > other.value def __eq__(self, other): return self.value == other.value + def __hash__(self): + return hash(self.value) self.assertTrue(A(1) != A(2)) self.assertFalse(A(1) != A(1)) @@ -620,6 +622,8 @@ class TestTotalOrdering(unittest.TestCase): return self.value > other.value def __eq__(self, other): return self.value == other.value + def __hash__(self): + return hash(self.value) self.assertTrue(A(1) != A(2)) self.assertFalse(A(1) != A(1)) @@ -633,6 +637,8 @@ class TestTotalOrdering(unittest.TestCase): return self.value == other.value def __ne__(self, other): raise RuntimeError(self, other) + def __hash__(self): + return hash(self.value) with self.assertRaises(RuntimeError): A(1) != A(2) with self.assertRaises(RuntimeError): @@ -648,6 +654,8 @@ class TestTotalOrdering(unittest.TestCase): return self.value == other.value def __ne__(self, other): raise RuntimeError(self, other) + def __hash__(self): + return hash(self.value) with self.assertRaises(RuntimeError): A(1) != A(2) with self.assertRaises(RuntimeError): diff --git a/Lib/test/test_itertools.py b/Lib/test/test_itertools.py index 7eee81a568..1e6db3426e 100644 --- a/Lib/test/test_itertools.py +++ b/Lib/test/test_itertools.py @@ -1491,6 +1491,8 @@ class RegressionTests(unittest.TestCase): if K.i == 1: next(g, None) return True + def __hash__(self): + return 1 g = next(groupby(range(10), K))[1] for j in range(2): next(g, None) # shouldn't crash