MCPcopy Index your code
hub / github.com/RustPython/RustPython / test_range_iterators

Method test_range_iterators

Lib/test/test_range.py:508–530  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

506 self.assertNotIn(1, r)
507
508 def test_range_iterators(self):
509 # exercise 'fast' iterators, that use a rangeiterobject internally.
510 # see issue 7298
511 limits = [base + jiggle
512 for M in (2**32, 2**64)
513 for base in (-M, -M//2, 0, M//2, M)
514 for jiggle in (-2, -1, 0, 1, 2)]
515 test_ranges = [(start, end, step)
516 for start in limits
517 for end in limits
518 for step in (-2**63, -2**31, -2, -1, 1, 2)]
519
520 for start, end, step in test_ranges:
521 iter1 = range(start, end, step)
522 iter2 = pyrange(start, end, step)
523 test_id = "range({}, {}, {})".format(start, end, step)
524 # check first 100 entries
525 self.assert_iterators_equal(iter1, iter2, test_id, limit=100)
526
527 iter1 = reversed(range(start, end, step))
528 iter2 = pyrange_reversed(start, end, step)
529 test_id = "reversed(range({}, {}, {}))".format(start, end, step)
530 self.assert_iterators_equal(iter1, iter2, test_id, limit=100)
531
532 def test_range_iterators_invocation(self):
533 # verify range iterators instances cannot be created by

Callers

nothing calls this directly

Calls 5

pyrangeFunction · 0.85
reversedFunction · 0.85
pyrange_reversedFunction · 0.85
formatMethod · 0.45

Tested by

no test coverage detected