mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
Issue #1393: object_richcompare() returns NotImplemented instead of
False if the objects aren't equal, to give the other side a chance.
This commit is contained in:
parent
673f7efa08
commit
ab078ddb4f
3 changed files with 23 additions and 1 deletions
|
@ -16,6 +16,13 @@ class Cmp:
|
|||
def __eq__(self, other):
|
||||
return self.arg == other
|
||||
|
||||
class Anything:
|
||||
def __eq__(self, other):
|
||||
return True
|
||||
|
||||
def __ne__(self, other):
|
||||
return False
|
||||
|
||||
class ComparisonTest(unittest.TestCase):
|
||||
set1 = [2, 2.0, 2, 2+0j, Cmp(2.0)]
|
||||
set2 = [[1], (3,), None, Empty()]
|
||||
|
@ -45,6 +52,15 @@ class ComparisonTest(unittest.TestCase):
|
|||
self.assertTrue(a == b)
|
||||
self.assertFalse(a != b)
|
||||
|
||||
def test_issue_1393(self):
|
||||
x = lambda: None
|
||||
self.assertEqual(x, Anything())
|
||||
self.assertEqual(Anything(), x)
|
||||
y = object()
|
||||
self.assertEqual(y, Anything())
|
||||
self.assertEqual(Anything(), y)
|
||||
|
||||
|
||||
def test_main():
|
||||
test_support.run_unittest(ComparisonTest)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue