Chris@165
|
1
|
Chris@165
|
2 module yetilab.stream.test.test_channels;
|
Chris@165
|
3
|
Chris@165
|
4 ch = load yetilab.stream.channels;
|
Chris@165
|
5 mat = load yetilab.matrix.matrix;
|
Chris@165
|
6 bl = load yetilab.block.block;
|
Chris@165
|
7
|
Chris@165
|
8 { compare, compareUsing } = load yetilab.test.test;
|
Chris@165
|
9
|
Chris@165
|
10 newMatrix data = mat.newMatrix (ColumnMajor ()) (map bl.fromList data);
|
Chris@165
|
11
|
Chris@165
|
12 compareBlocks b1 b2 =
|
Chris@165
|
13 compare (bl.list b1) (bl.list b2);
|
Chris@165
|
14
|
Chris@165
|
15 [
|
Chris@165
|
16
|
Chris@165
|
17 "interleaved": \(
|
Chris@165
|
18 compareBlocks (ch.interleaved (newMatrix [[1,4],[2,5],[3,6]]))
|
Chris@165
|
19 (bl.fromList [1,4,2,5,3,6]) and
|
Chris@165
|
20 compareBlocks (ch.interleaved (newMatrix [[1],[2],[3]]))
|
Chris@165
|
21 (bl.fromList [1,2,3])
|
Chris@165
|
22 ),
|
Chris@165
|
23
|
Chris@165
|
24 "deinterleaved": \(
|
Chris@165
|
25 compareUsing mat.equal (ch.deinterleaved 2 (bl.fromList [1,4,2,5,3,6]))
|
Chris@165
|
26 (newMatrix [[1,4],[2,5],[3,6]]) and
|
Chris@165
|
27 compareUsing mat.equal (ch.deinterleaved 1 (bl.fromList [1,2,3]))
|
Chris@165
|
28 (newMatrix [[1],[2],[3]])
|
Chris@165
|
29 ),
|
Chris@165
|
30
|
Chris@165
|
31 "mixedDown": \(
|
Chris@165
|
32 compareBlocks (ch.mixedDown (newMatrix [[1,4],[2,5],[3,6]]))
|
Chris@165
|
33 (bl.fromList [5,7,9]) and
|
Chris@165
|
34 compareBlocks (ch.mixedDown (newMatrix []))
|
Chris@165
|
35 (bl.fromList [])
|
Chris@165
|
36 ),
|
Chris@165
|
37
|
Chris@165
|
38 "mixedDownFromInterleaved": \(
|
Chris@165
|
39 compareBlocks (ch.mixedDownFromInterleaved 2 (bl.fromList [1,4,2,5,3,6]))
|
Chris@165
|
40 (bl.fromList [5,7,9]) and
|
Chris@165
|
41 compareBlocks (ch.mixedDownFromInterleaved 1 (bl.fromList [1,2,3]))
|
Chris@165
|
42 (bl.fromList [1,2,3])
|
Chris@165
|
43 ),
|
Chris@165
|
44
|
Chris@165
|
45 "mixedFromInterleavedTo": \(
|
Chris@165
|
46 compareBlocks (ch.mixedFromInterleavedTo 1 2 (bl.fromList [1,4,2,5,3,6]))
|
Chris@165
|
47 (bl.fromList [5,7,9]) and
|
Chris@165
|
48 compareBlocks (ch.mixedFromInterleavedTo 2 2 (bl.fromList [1,4,2,5,3,6]))
|
Chris@165
|
49 (bl.fromList [1,4,2,5,3,6]) and
|
Chris@165
|
50 compareBlocks (ch.mixedFromInterleavedTo 3 2 (bl.fromList [1,4,2,5,3,6]))
|
Chris@165
|
51 (bl.fromList [1,4,0,2,5,0,3,6,0]) and
|
Chris@165
|
52 compareBlocks (ch.mixedFromInterleavedTo 1 1 (bl.fromList [1,2,3]))
|
Chris@165
|
53 (bl.fromList [1,2,3]) and
|
Chris@165
|
54 compareBlocks (ch.mixedFromInterleavedTo 2 1 (bl.fromList [1,2,3]))
|
Chris@165
|
55 (bl.fromList [1,1,2,2,3,3]) and
|
Chris@165
|
56 compareBlocks (ch.mixedFromInterleavedTo 3 1 (bl.fromList [1,2,3]))
|
Chris@165
|
57 (bl.fromList [1,1,0,2,2,0,3,3,0])
|
Chris@165
|
58 ),
|
Chris@165
|
59
|
Chris@165
|
60 "mixedAndInterleavedTo": \(
|
Chris@165
|
61 compareBlocks (ch.mixedAndInterleavedTo 1 (newMatrix [[1,4],[2,5],[3,6]]))
|
Chris@165
|
62 (bl.fromList [5,7,9]) and
|
Chris@165
|
63 compareBlocks (ch.mixedAndInterleavedTo 2 (newMatrix [[1,4],[2,5],[3,6]]))
|
Chris@165
|
64 (bl.fromList [1,4,2,5,3,6]) and
|
Chris@165
|
65 compareBlocks (ch.mixedAndInterleavedTo 3 (newMatrix [[1,4],[2,5],[3,6]]))
|
Chris@165
|
66 (bl.fromList [1,4,0,2,5,0,3,6,0]) and
|
Chris@165
|
67 compareBlocks (ch.mixedAndInterleavedTo 1 (newMatrix [[1],[2],[3]]))
|
Chris@165
|
68 (bl.fromList [1,2,3]) and
|
Chris@165
|
69 compareBlocks (ch.mixedAndInterleavedTo 2 (newMatrix [[1],[2],[3]]))
|
Chris@165
|
70 (bl.fromList [1,1,2,2,3,3]) and
|
Chris@165
|
71 compareBlocks (ch.mixedAndInterleavedTo 3 (newMatrix [[1],[2],[3]]))
|
Chris@207
|
72 (bl.fromList [1,1,1,2,2,2,3,3,3])
|
Chris@165
|
73 ),
|
Chris@165
|
74
|
Chris@165
|
75 ] is hash<string, () -> boolean>;
|
Chris@165
|
76
|
Chris@165
|
77
|