24 is($rc, 0, "exit 0"); |
28 is($rc, 0, "exit 0"); |
25 like($test->stdout, qr/^Usage:.*^Options/ms, "Usage and Options"); |
29 like($test->stdout, qr/^Usage:.*^Options/ms, "Usage and Options"); |
26 is($test->stderr, "", "stderr should be empty"); |
30 is($test->stderr, "", "stderr should be empty"); |
27 }; |
31 }; |
28 |
32 |
29 |
|
30 $test->run(args => "-m"); |
33 $test->run(args => "-m"); |
31 $rc = $? >> 8; |
34 $rc = $? >> 8; |
32 subtest "run w/ -m" => sub { |
35 subtest "run w/ -m" => sub { |
33 is($rc, 0, "exit 0"); |
36 is($rc, 0, "exit 0"); |
34 like($test->stdout, qr/^N.*^S.*^O/msi, "looks like manpage"); |
37 like($test->stdout, qr/^N.*^S.*^O/msi, "looks like manpage"); |
35 is($test->stderr, "", "stderr should be empty"); |
38 is($test->stderr, "", "stderr should be empty"); |
36 }; |
39 }; |
37 |
40 |
38 # create a fake df |
41 # create a fake df |
|
42 my $head = |
|
43 "Filesystem 1024-blocks Used Available Capacity Mounted on"; |
|
44 my @data = ( |
|
45 { in => "/dev/mapper/jumper-root 7970992 6769920 801696 90% /", r => 2 }, |
|
46 { in => "tmpfs 1927372 12 1927360 1% /lib/init/rw", r => 0 }, |
|
47 { in => "varrun 1927372 168 1927204 1% /var/run", r => 0 }, |
|
48 { in => "varlock 1927372 0 1927372 0% /var/lock", r => 0 }, |
|
49 { in => "udev 1921416 256 1921160 1% /dev", r => 0 }, |
|
50 { in => "tmpfs 1927372 40 1927332 1% /dev/shm", r => 0 }, |
|
51 { |
|
52 in => "/dev/mapper/jumper-home 30963708 27663468 1727736 95% /home", |
|
53 r => 2 |
|
54 }, |
|
55 { in => "/dev/sda1 235021 35434 187453 16% /boot", r => 0 }, |
|
56 { in => "/dev/mapper/jumper-jumper 13789092 13701780 0 100% /.o", r => 2 }, |
|
57 { |
|
58 in => |
|
59 "/dev/mapper/jumper-squid 1108684 247408 804956 24% /var/spool/squid", |
|
60 r => 0 |
|
61 }, |
|
62 { |
|
63 in => "/dev/mapper/jumper-log 2097152 32364 2064788 2% /var/log", |
|
64 r => 0 |
|
65 }, |
|
66 { in => "tmpfs 131072 3568 127504 3% /tmp", r => 0 }, |
|
67 { |
|
68 in => "/dev/mapper/jumper-src 10321208 888736 8908184 10% /usr/src", |
|
69 r => 0 |
|
70 }, |
|
71 { in => "tmpfs 0 3568 127504 3% /tmp", r => 3 }, |
|
72 ); |
39 |
73 |
|
74 foreach (@data) { |
|
75 |
|
76 my $send = $_->{in}; |
|
77 my $expect = $_->{r}; |
|
78 my $fs = (split " " => $send)[-1]; |
|
79 |
|
80 $test->run(args => $fs, stdin => "$head\n$send"); |
|
81 my $rc = $? >> 8; |
|
82 |
|
83 subtest "filesystem $fs (expect $expect)" => sub { |
|
84 |
|
85 is($rc, $expect, "expected $expect") |
|
86 or diag length($test->stderr) ? "STDERR: " . $test->stderr |
|
87 : "" . length($test->stdout) ? "STDOUT: " . $test->stdout |
|
88 : ""; |
|
89 |
|
90 if ($expect == 0) { like($test->stdout, qr/FS OK/, "ok $fs") } |
|
91 elsif ($expect == 1) { like($test->stdout, qr/FS WARN/, "warn $fs") } |
|
92 elsif ($expect == 2) { like($test->stdout, qr/FS CRIT/, "crit $fs") } |
|
93 else { like($test->stdout, qr/FS UNKN/, "unknown $fs") } |
|
94 }; |
|
95 } |
40 |
96 |
41 done_testing; |
97 done_testing; |