3 # The expected output looks like this:
5 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
6 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
7 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
8 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
9 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
10 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
11 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
12 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
13 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
14 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
15 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
16 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
17 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
18 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
19 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
20 # (priority-fifo) iteration: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
22 # A different permutation of 0...15 is acceptable, but every line must
23 # be in the same order.
30 my (@output) = read_text_file ("$test.output");
32 common_checks ("run", @output);
34 my ($thread_cnt) = 16;
37 my (@t) = (-1) x $thread_cnt;
39 my (@iterations) = grep (/iteration:/, @output);
40 fail "No iterations found in output.\n" if !@iterations;
42 my (@numbering) = $iterations[0] =~ /(\d+)/g;
43 fail "First iteration does not list exactly $thread_cnt threads.\n"
44 if @numbering != $thread_cnt;
46 my (@sorted_numbering) = sort { $a <=> $b } @numbering;
47 for my $i (0...$#sorted_numbering) {
48 if ($sorted_numbering[$i] != $i) {
49 fail "First iteration does not list all threads "
50 . "0...$#sorted_numbering\n";
54 for my $i (1...$#iterations) {
55 if ($iterations[$i] ne $iterations[0]) {
56 fail "Iteration $i differs from iteration 0\n";
60 fail "$iter_cnt iterations expected but " . scalar (@iterations) . " found\n"
61 if $iter_cnt != @iterations;