mirror of
https://github.com/romanz/amodem.git
synced 2026-03-17 07:05:59 +08:00
simplify common.iterate()
This commit is contained in:
@@ -1,20 +1,26 @@
|
||||
import common
|
||||
import numpy as np
|
||||
|
||||
|
||||
def iterlist(x, *args, **kwargs):
|
||||
x = np.array(x)
|
||||
return [(offset, list(buf)) for offset, buf in common.iterate(x, *args, **kwargs)]
|
||||
return list((i, list(x)) for i, x in common.iterate(x, *args, **kwargs))
|
||||
|
||||
|
||||
def test_iterate():
|
||||
N = 10
|
||||
assert iterlist(range(N), 1) == [(i, [i]) for i in range(N)]
|
||||
assert iterlist(range(N), 1) == [(i, [i]) for i in range(N)]
|
||||
assert iterlist(range(N), 2) == [(i, [i, i+1]) for i in range(N-1)]
|
||||
assert iterlist(range(N), 3) == [(i, [i, i+1, i+2]) for i in range(N-2)]
|
||||
assert iterlist(range(N), 3, advance=2) == [(i, [i, i+1, i+2]) for i in range(0, N-2, 2)]
|
||||
assert iterlist(range(N), 3, advance=3) == [(i, [i, i+1, i+2]) for i in range(0, N-2, 3)]
|
||||
assert iterlist(range(N), 2, offset=5) == [(i, [i, i+1]) for i in range(5, N-1)]
|
||||
assert iterlist(range(N), 1, func=lambda b: -b) == [(i, [-i]) for i in range(N)]
|
||||
assert iterlist(range(N), 1) == [
|
||||
(i, [i]) for i in range(N)]
|
||||
|
||||
assert iterlist(range(N), 2) == [
|
||||
(i, [i, i+1]) for i in range(0, N-1, 2)]
|
||||
|
||||
assert iterlist(range(N), 3) == [
|
||||
(i, [i, i+1, i+2]) for i in range(0, N-2, 3)]
|
||||
|
||||
assert iterlist(range(N), 1, func=lambda b: -b) == [
|
||||
(i, [-i]) for i in range(N)]
|
||||
|
||||
|
||||
def test_split():
|
||||
L = [(i*2, i*2+1) for i in range(10)]
|
||||
@@ -30,6 +36,7 @@ def test_split():
|
||||
except IndexError as e:
|
||||
assert e.args == (i,)
|
||||
|
||||
|
||||
def test_icapture():
|
||||
x = range(100)
|
||||
y = []
|
||||
|
||||
Reference in New Issue
Block a user