File tree Expand file tree Collapse file tree 2 files changed +21
-2
lines changed Expand file tree Collapse file tree 2 files changed +21
-2
lines changed Original file line number Diff line number Diff line change @@ -610,6 +610,24 @@ class Y(C[int]):
610
610
assert Y .__qualname__ == 'GenericTests.test_repr_2.<locals>.Y'
611
611
assert repr (Y ).split ('.' )[- 1 ] == 'Y[int]'
612
612
613
+ def test_eq_1 (self ):
614
+ assert Generic == Generic
615
+ assert Generic [T ] == Generic [T ]
616
+ assert Generic [KT ] != Generic [VT ]
617
+
618
+ def test_eq_2 (self ):
619
+
620
+ class A (Generic [T ]):
621
+ pass
622
+
623
+ class B (Generic [T ]):
624
+ pass
625
+
626
+ assert A == A
627
+ assert A != B
628
+ assert A [T ] == A [T ]
629
+ assert A [T ] != B [T ]
630
+
613
631
614
632
class UndefinedTest (TestCase ):
615
633
Original file line number Diff line number Diff line change @@ -715,10 +715,11 @@ def __repr__(self):
715
715
def __eq__ (self , other ):
716
716
if not isinstance (other , GenericMeta ):
717
717
return NotImplemented
718
- return other .__parameters__ == self .__parameters__
718
+ return (self .__name__ == other .__name__ and
719
+ self .__parameters__ == other .__parameters__ )
719
720
720
721
def __hash__ (self ):
721
- return hash (self .__parameters__ )
722
+ return hash (( self .__name__ , self . __parameters__ ) )
722
723
723
724
def __getitem__ (self , params ):
724
725
if not isinstance (params , tuple ):
You can’t perform that action at this time.
0 commit comments