@@ -125,11 +125,21 @@ def test_basic_python_objects() -> None:
125125 assert comparator (a , b )
126126 assert not comparator (a , c )
127127
128- a = range (1 ,10 )
129- b = range (1 ,10 )
130- c = range (1 ,20 )
131- assert comparator (a , b )
132- assert not comparator (a , c )
128+ @pytest .mark .parametrize ("r1, r2, expected" , [
129+ (range (1 , 10 ), range (1 , 10 ), True ), # equal
130+ (range (0 , 10 ), range (1 , 10 ), False ), # different start
131+ (range (2 , 10 ), range (1 , 10 ), False ),
132+ (range (1 , 5 ), range (1 , 10 ), False ), # different stop
133+ (range (1 , 20 ), range (1 , 10 ), False ),
134+ (range (1 , 10 , 1 ), range (1 , 10 , 2 ), False ), # different step
135+ (range (1 , 10 , 3 ), range (1 , 10 , 2 ), False ),
136+ (range (- 5 , 0 ), range (- 5 , 0 ), True ), # negative ranges
137+ (range (- 10 , 0 ), range (- 5 , 0 ), False ),
138+ (range (5 , 1 ), range (10 , 5 ), True ), # empty ranges
139+ (range (5 , 1 ), range (5 , 1 ), True ),
140+ ])
141+ def test_ranges (r1 , r2 , expected ):
142+ assert comparator (r1 , r2 ) == expected
133143
134144
135145def test_standard_python_library_objects () -> None :
0 commit comments