@@ -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