bpo-37685: Fixed __eq__, __lt__ etc implementations in some classes. (GH-14952)
They now return NotImplemented for unsupported type of the other operand.
diff --git a/Lib/test/test_xmlrpc.py b/Lib/test/test_xmlrpc.py
index 52bacc1..e5c3496 100644
--- a/Lib/test/test_xmlrpc.py
+++ b/Lib/test/test_xmlrpc.py
@@ -15,6 +15,7 @@
import io
import contextlib
from test import support
+from test.support import ALWAYS_EQ, LARGEST, SMALLEST
try:
import gzip
@@ -530,14 +531,10 @@
# some other types
dbytes = dstr.encode('ascii')
dtuple = now.timetuple()
- with self.assertRaises(TypeError):
- dtime == 1970
- with self.assertRaises(TypeError):
- dtime != dbytes
- with self.assertRaises(TypeError):
- dtime == bytearray(dbytes)
- with self.assertRaises(TypeError):
- dtime != dtuple
+ self.assertFalse(dtime == 1970)
+ self.assertTrue(dtime != dbytes)
+ self.assertFalse(dtime == bytearray(dbytes))
+ self.assertTrue(dtime != dtuple)
with self.assertRaises(TypeError):
dtime < float(1970)
with self.assertRaises(TypeError):
@@ -547,6 +544,18 @@
with self.assertRaises(TypeError):
dtime >= dtuple
+ self.assertTrue(dtime == ALWAYS_EQ)
+ self.assertFalse(dtime != ALWAYS_EQ)
+ self.assertTrue(dtime < LARGEST)
+ self.assertFalse(dtime > LARGEST)
+ self.assertTrue(dtime <= LARGEST)
+ self.assertFalse(dtime >= LARGEST)
+ self.assertFalse(dtime < SMALLEST)
+ self.assertTrue(dtime > SMALLEST)
+ self.assertFalse(dtime <= SMALLEST)
+ self.assertTrue(dtime >= SMALLEST)
+
+
class BinaryTestCase(unittest.TestCase):
# XXX What should str(Binary(b"\xff")) return? I'm chosing "\xff"