@@ -162,24 +162,14 @@ def test_large_operands(self):
162162
163163 def test_large_range (self ):
164164 # Check long ranges (len > sys.maxsize)
165- # len() is expected to fail due to limitations of the __len__ protocol
166- def _range_len (x ):
167- try :
168- length = len (x )
169- except OverflowError :
170- step = x [1 ] - x [0 ]
171- length = 1 + ((x [- 1 ] - x [0 ]) // step )
172- return length
173-
174165 a = - sys .maxsize
175166 b = sys .maxsize
176167 expected_len = b - a
177168 x = range (a , b )
178169 self .assertIn (a , x )
179170 self .assertNotIn (b , x )
180- self .assertRaises ( OverflowError , len , x )
171+ self .assertEqual ( len ( x ), expected_len )
181172 self .assertTrue (x )
182- self .assertEqual (_range_len (x ), expected_len )
183173 self .assertEqual (x [0 ], a )
184174 idx = sys .maxsize + 1
185175 self .assertEqual (x [idx ], a + idx )
@@ -195,9 +185,8 @@ def _range_len(x):
195185 x = range (a , b )
196186 self .assertIn (a , x )
197187 self .assertNotIn (b , x )
198- self .assertRaises ( OverflowError , len , x )
188+ self .assertEqual ( len ( x ), expected_len )
199189 self .assertTrue (x )
200- self .assertEqual (_range_len (x ), expected_len )
201190 self .assertEqual (x [0 ], a )
202191 idx = sys .maxsize + 1
203192 self .assertEqual (x [idx ], a + idx )
@@ -214,9 +203,8 @@ def _range_len(x):
214203 x = range (a , b , c )
215204 self .assertIn (a , x )
216205 self .assertNotIn (b , x )
217- self .assertRaises ( OverflowError , len , x )
206+ self .assertEqual ( len ( x ), expected_len )
218207 self .assertTrue (x )
219- self .assertEqual (_range_len (x ), expected_len )
220208 self .assertEqual (x [0 ], a )
221209 idx = sys .maxsize + 1
222210 self .assertEqual (x [idx ], a + (idx * c ))
@@ -233,9 +221,8 @@ def _range_len(x):
233221 x = range (a , b , c )
234222 self .assertIn (a , x )
235223 self .assertNotIn (b , x )
236- self .assertRaises ( OverflowError , len , x )
224+ self .assertEqual ( len ( x ), expected_len )
237225 self .assertTrue (x )
238- self .assertEqual (_range_len (x ), expected_len )
239226 self .assertEqual (x [0 ], a )
240227 idx = sys .maxsize + 1
241228 self .assertEqual (x [idx ], a + (idx * c ))
0 commit comments