Chris@16
|
1
|
Chris@93
|
2 module yetilab.stream.test.test_framer;
|
Chris@16
|
3
|
Chris@93
|
4 fr = load yetilab.stream.framer;
|
Chris@93
|
5 block = load yetilab.block.block;
|
Chris@23
|
6
|
Chris@93
|
7 { compare, testStream } = load yetilab.test.test;
|
Chris@53
|
8
|
Chris@53
|
9 [
|
Chris@16
|
10
|
Chris@23
|
11 "framecount-2x2": \(
|
Chris@53
|
12 fr = fr.frames { framesize = 2, hop = 2 } (testStream 2);
|
Chris@53
|
13 compare (length fr) 1
|
Chris@16
|
14 ),
|
Chris@16
|
15
|
Chris@23
|
16 "framecount-2x3": \(
|
Chris@53
|
17 fr = fr.frames { framesize = 2, hop = 2 } (testStream 3);
|
Chris@53
|
18 compare (length fr) 2
|
Chris@16
|
19 ),
|
Chris@16
|
20
|
Chris@23
|
21 "framecount-2x4": \(
|
Chris@53
|
22 fr = fr.frames { framesize = 2, hop = 2 } (testStream 4);
|
Chris@53
|
23 compare (length fr) 2
|
Chris@23
|
24 ),
|
Chris@23
|
25
|
Chris@23
|
26 "framecount-2.1x0": \(
|
Chris@53
|
27 fr = fr.frames { framesize = 2, hop = 1 } (testStream 0);
|
Chris@53
|
28 compare (length fr) 1
|
Chris@23
|
29 ),
|
Chris@23
|
30
|
Chris@23
|
31 "framecount-2.1x1": \(
|
Chris@53
|
32 fr = fr.frames { framesize = 2, hop = 1 } (testStream 1);
|
Chris@53
|
33 compare (length fr) 2
|
Chris@23
|
34 ),
|
Chris@23
|
35
|
Chris@23
|
36 "framecount-2.1x2": \(
|
Chris@53
|
37 fr = fr.frames { framesize = 2, hop = 1 } (testStream 2);
|
Chris@53
|
38 compare (length fr) 3
|
Chris@23
|
39 ),
|
Chris@23
|
40
|
Chris@23
|
41 "framecount-2.1x3": \(
|
Chris@53
|
42 fr = fr.frames { framesize = 2, hop = 1 } (testStream 3);
|
Chris@53
|
43 compare (length fr) 4
|
Chris@23
|
44 ),
|
Chris@23
|
45
|
Chris@23
|
46 "framecount-4.1x4": \(
|
Chris@53
|
47 fr = fr.frames { framesize = 4, hop = 1 } (testStream 4);
|
Chris@53
|
48 compare (length fr) 7
|
Chris@23
|
49 ),
|
Chris@23
|
50
|
Chris@23
|
51 "framecount-4.3x4": \(
|
Chris@53
|
52 fr = fr.frames { framesize = 4, hop = 3 } (testStream 4);
|
Chris@53
|
53 compare (length fr) 2
|
Chris@23
|
54 ),
|
Chris@23
|
55
|
Chris@23
|
56 "framecount-4.4x4": \(
|
Chris@53
|
57 fr = fr.frames { framesize = 4, hop = 4 } (testStream 4);
|
Chris@53
|
58 compare (length fr) 1
|
Chris@23
|
59 ),
|
Chris@23
|
60
|
Chris@23
|
61 "framecount-3.2x4": \(
|
Chris@53
|
62 fr = fr.frames { framesize = 3, hop = 2 } (testStream 4);
|
Chris@53
|
63 compare (length fr) 3
|
Chris@23
|
64 ),
|
Chris@23
|
65
|
Chris@24
|
66 "frames-2x5": \(
|
Chris@53
|
67 fr = fr.frames { framesize = 2, hop = 2 } (testStream 5);
|
Chris@31
|
68 expected = [ [1,2], [3,4], [5,0] ];
|
Chris@53
|
69 compare (map block.list fr) expected;
|
Chris@24
|
70 ),
|
Chris@24
|
71
|
Chris@23
|
72 "frames-4.3x4": \(
|
Chris@53
|
73 fr = fr.frames { framesize = 4, hop = 3 } (testStream 4);
|
Chris@31
|
74 expected = [ [0,1,2,3], [3,4,0,0] ];
|
Chris@53
|
75 compare (map block.list fr) expected;
|
Chris@23
|
76 ),
|
Chris@23
|
77
|
Chris@23
|
78 "frames-3.2x4": \(
|
Chris@53
|
79 fr = fr.frames { framesize = 3, hop = 2 } (testStream 4);
|
Chris@31
|
80 expected = [ [0,1,2], [2,3,4], [4,0,0] ];
|
Chris@53
|
81 compare (map block.list fr) expected;
|
Chris@23
|
82 ),
|
Chris@23
|
83
|
Chris@23
|
84 "frames-3.1x6": \(
|
Chris@53
|
85 fr = fr.frames { framesize = 3, hop = 1 } (testStream 6);
|
Chris@31
|
86 expected = [ [0,0,1], [0,1,2], [1,2,3], [2,3,4],
|
Chris@31
|
87 [3,4,5], [4,5,6], [5,6,0], [6,0,0] ];
|
Chris@53
|
88 compare (map block.list fr) expected;
|
Chris@16
|
89 ),
|
Chris@16
|
90
|
Chris@53
|
91 ] is hash<string, () -> boolean>;
|
Chris@16
|
92
|
Chris@16
|
93
|
Chris@27
|
94
|