@@ -125,6 +125,26 @@ def test_basic_python_objects() -> None:
125125 assert comparator (a , b )
126126 assert not comparator (a , c )
127127
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+ (range (7 ), range (0 , 7 ), True ),
141+ (range (0 , 7 ), range (0 , 7 , 1 ), True ),
142+ (range (7 ), range (0 , 7 , 1 ), True ),
143+ ])
144+
145+ def test_ranges (r1 , r2 , expected ):
146+ assert comparator (r1 , r2 ) == expected
147+
128148
129149def test_standard_python_library_objects () -> None :
130150 a = datetime .datetime (2020 , 2 , 2 , 2 , 2 , 2 ) # type: ignore
0 commit comments