Skip to content

Commit fa547b5

Browse files
committed
add "self" comparison checks
1 parent 72027f6 commit fa547b5

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

Lib/test/test_dataclasses/__init__.py

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -370,6 +370,16 @@ class C1:
370370
@dataclass(order=True)
371371
class C:
372372
pass
373+
374+
# Check "self" comparisons.
375+
ref = C()
376+
self.assertEqual(ref, ref)
377+
self.assertLessEqual(ref, ref)
378+
self.assertGreaterEqual(ref, ref)
379+
self.assertFalse(ref != ref)
380+
self.assertFalse(ref < ref)
381+
self.assertFalse(ref > ref)
382+
373383
self.assertLessEqual(C(), C())
374384
self.assertGreaterEqual(C(), C())
375385

@@ -399,6 +409,16 @@ class C1:
399409
@dataclass(order=True)
400410
class C:
401411
x: int
412+
413+
# Check "self" comparisons.
414+
ref = C(0)
415+
self.assertEqual(ref, ref)
416+
self.assertLessEqual(ref, ref)
417+
self.assertGreaterEqual(ref, ref)
418+
self.assertFalse(ref != ref)
419+
self.assertFalse(ref < ref)
420+
self.assertFalse(ref > ref)
421+
402422
self.assertLess(C(0), C(1))
403423
self.assertLessEqual(C(0), C(1))
404424
self.assertLessEqual(C(1), C(1))
@@ -412,6 +432,15 @@ class CFloat:
412432

413433
nan = float("nan")
414434

435+
# Check "self" comparisons.
436+
ref = CFloat(nan)
437+
self.assertEqual(ref, ref)
438+
self.assertLessEqual(ref, ref)
439+
self.assertGreaterEqual(ref, ref)
440+
self.assertFalse(ref != ref)
441+
self.assertFalse(ref < ref)
442+
self.assertFalse(ref > ref)
443+
415444
self.assertNotEqual(CFloat(0.0), CFloat(nan))
416445
self.assertNotEqual(CFloat(nan), CFloat(0.0))
417446
self.assertNotEqual(CFloat(nan), CFloat(nan))

0 commit comments

Comments
 (0)