diff options
author | phowen <phowen@cisco.com> | 2017-02-14 15:19:18 +0000 |
---|---|---|
committer | phowen <phowen@cisco.com> | 2017-02-14 15:19:18 +0000 |
commit | 98a365d76c9b7e270d7b00953905d80c80c1467d (patch) | |
tree | 57c4a7a17bd138344b31de2f8f2de7e0f4ed78d1 /plugins-scripts/t | |
parent | 0d73b499dd939924d49f955ac84550fab5f3cdde (diff) | |
download | monitoring-plugins-98a365d76c9b7e270d7b00953905d80c80c1467d.tar.gz |
add range checking to check_file_age
Diffstat (limited to 'plugins-scripts/t')
-rw-r--r-- | plugins-scripts/t/check_file_age.t | 46 |
1 files changed, 44 insertions, 2 deletions
diff --git a/plugins-scripts/t/check_file_age.t b/plugins-scripts/t/check_file_age.t index 50a2e699..ebf673f5 100644 --- a/plugins-scripts/t/check_file_age.t +++ b/plugins-scripts/t/check_file_age.t @@ -5,14 +5,14 @@ # use strict; -use Test::More tests => 17; +use Test::More tests => 27; use NPTest; my $successOutput = '/^FILE_AGE OK: /'; my $warningOutput = '/^FILE_AGE WARNING: /'; my $criticalOutput = '/^FILE_AGE CRITICAL: /'; my $unknownOutput = '/^FILE_AGE UNKNOWN: /'; -my $performanceOutput = '/ \| age=[0-9]+s;[0-9]+;[0-9]+ size=[0-9]+B;[0-9]+;[0-9]+;0$/'; +my $performanceOutput = '/ \| age=[0-9]+s;[0-9:]+;[0-9:]+ size=[0-9]+B;[0-9:]+;[0-9:]+;0$/'; my $result; my $temp_file = "/tmp/check_file_age.tmp"; @@ -48,22 +48,44 @@ cmp_ok( $result->return_code, '==', 1, "Warning for file over 1 second old" ); like ( $result->output, $warningOutput, "Output for warning correct" ); $result = NPTest->testCmd( + "./check_file_age -f $temp_file -w 0:1" + ); +cmp_ok( $result->return_code, '==', 1, "Warning for file over 1 second old by range" ); +like ( $result->output, $warningOutput, "Output for warning by range correct" ); + +$result = NPTest->testCmd( "./check_file_age -f $temp_file -c 1" ); cmp_ok( $result->return_code, '==', 2, "Critical for file over 1 second old" ); like ( $result->output, $criticalOutput, "Output for critical correct" ); $result = NPTest->testCmd( + "./check_file_age -f $temp_file -c 0:1" + ); +cmp_ok( $result->return_code, '==', 2, "Critical for file over 1 second old by range" ); +like ( $result->output, $criticalOutput, "Output for critical by range correct" ); + +$result = NPTest->testCmd( "./check_file_age -f $temp_file -c 1000 -W 100" ); cmp_ok( $result->return_code, '==', 0, "Checking file size" ); $result = NPTest->testCmd( + "./check_file_age -f $temp_file -c 0:1000 -W 0:100" + ); +cmp_ok( $result->return_code, '==', 0, "Checking file size by range" ); + +$result = NPTest->testCmd( "./check_file_age -f $temp_file -c 1000 -W 100" ); like( $result->output, $performanceOutput, "Checking for performance Output" ); $result = NPTest->testCmd( + "./check_file_age -f $temp_file -c 1000 -W 100" + ); +like( $result->output, $performanceOutput, "Checking for performance Output from range" ); + +$result = NPTest->testCmd( "./check_file_age -f /non/existent --ignore-missing" ); cmp_ok( $result->return_code, '==', 0, "Honours --ignore-missing" ); @@ -74,10 +96,30 @@ $result = NPTest->testCmd( cmp_ok( $result->return_code, '==', 1, "One byte too short" ); $result = NPTest->testCmd( + "./check_file_age -f $temp_file -c 1000 -W 101:" + ); +cmp_ok( $result->return_code, '==', 1, "One byte too short by range" ); + +$result = NPTest->testCmd( "./check_file_age -f $temp_file -c 1000 -C 101" ); cmp_ok( $result->return_code, '==', 2, "One byte too short - critical" ); +$result = NPTest->testCmd( + "./check_file_age -f $temp_file -c 1000 -C 101:" + ); +cmp_ok( $result->return_code, '==', 2, "One byte too short by range - critical" ); + +$result = NPTest->testCmd( + "./check_file_age -f $temp_file -c 1000 -W 0:99" + ); +cmp_ok( $result->return_code, '==', 1, "One byte too long by range" ); + +$result = NPTest->testCmd( + "./check_file_age -f $temp_file -c 1000 -C 0:99" + ); +cmp_ok( $result->return_code, '==', 2, "One byte too long by range - critical" ); + symlink $temp_file, $temp_link or die "Cannot create symlink"; $result = NPTest->testCmd("./check_file_age -f $temp_link -c 10"); cmp_ok( $result->return_code, '==', 0, "Works for symlinks" ); |