diff options
-rw-r--r-- | plugins/check_disk.c | 6 | ||||
-rw-r--r-- | plugins/t/check_disk.t | 13 |
2 files changed, 13 insertions, 6 deletions
diff --git a/plugins/check_disk.c b/plugins/check_disk.c index b9787c89..3c7b0ecf 100644 --- a/plugins/check_disk.c +++ b/plugins/check_disk.c @@ -153,6 +153,7 @@ main (int argc, char **argv) char *output; char *details; char *perf; + char *preamble; double inode_space_pct; uintmax_t total, available, available_to_root, used; double dfree_pct = -1, dused_pct = -1; @@ -165,7 +166,8 @@ main (int argc, char **argv) struct parameter_list *temp_list, *path; struct name_list *seen = NULL; - output = strdup (" - free space:"); + preamble = strdup (" - free space:"); + output = strdup (""); details = strdup (""); perf = strdup (""); @@ -323,7 +325,7 @@ main (int argc, char **argv) asprintf (&output, "%s%s", output, details); - printf ("DISK %s%s|%s\n", state_text (result), output, perf); + printf ("DISK %s%s%s|%s\n", state_text (result), (erronly && result==STATE_OK) ? "" : preamble, output, perf); return result; } diff --git a/plugins/t/check_disk.t b/plugins/t/check_disk.t index 0fe87aa3..ec3d248c 100644 --- a/plugins/t/check_disk.t +++ b/plugins/t/check_disk.t @@ -10,9 +10,9 @@ use Test::More; use NPTest; use POSIX qw(ceil floor); -my $successOutput = '/^DISK OK - /'; -my $failureOutput = '/^DISK CRITICAL - /'; -my $warningOutput = '/^DISK WARNING - /'; +my $successOutput = '/^DISK OK/'; +my $failureOutput = '/^DISK CRITICAL/'; +my $warningOutput = '/^DISK WARNING/'; my $result; @@ -22,7 +22,7 @@ my $mountpoint2_valid = getTestParameter( "NP_MOUNTPOINT2_VALID", "Path to anoth if ($mountpoint_valid eq "" or $mountpoint2_valid eq "") { plan skip_all => "Need 2 mountpoints to test"; } else { - plan tests => 39; + plan tests => 42; } $result = NPTest->testCmd( @@ -55,6 +55,11 @@ if ($free_on_mp1 > $free_on_mp2) { $result = NPTest->testCmd( "./check_disk -w 1 -c 1 -p $more_free" ); cmp_ok( $result->return_code, '==', 0, "At least 1 MB available on $more_free"); like ( $result->output, $successOutput, "OK output" ); +like ( $result->only_output, qr/free space/, "Have free space text"); +like ( $result->only_output, qr/$more_free/, "Have disk name in text"); + +$result = NPTest->testCmd( "./check_disk -e -w 1 -c 1 -p $more_free" ); +is( $result->only_output, "DISK OK", "No print out of disks with -e for OKs"); $result = NPTest->testCmd( "./check_disk 100 100 $more_free" ); cmp_ok( $result->return_code, '==', 0, "Old syntax okay" ); |