def test_wrapper(): for l, x in loop(xrange(13)): print l.index, l.count, l.isfirst(), l.islast(), l.iseven(), x
def test_basic(): eq_([x for l, x in loop(iterable)], list(iterable)) eq_([l.index for l, x in loop(iterable)], range(len(list(iterable)))) eq_([l.index for l, x in loop(iterable) if not l.isfirst()], list(iterable)[1:]) eq_([l.index for l, x in loop(iterable) if not l.islast()], list(iterable)[:-1]) eq_([l.index for l, x in loop(iterable) if l.iseven()], list(iterable)[::2])
def test_multiitem(): eq_(sum(((a, b) for l, (a, b) in loop(iterable, n=2)), ()), tuple(iterable)) eq_([l.index for l, x in loop(iterable, n=2)], range(len(list(iterable)))[::2])