diff options
author | Thomas Guyot-Sionnest <dermoth@aei.ca> | 2011-01-05 23:09:54 -0500 |
---|---|---|
committer | Thomas Guyot-Sionnest <dermoth@aei.ca> | 2011-01-05 23:09:54 -0500 |
commit | ae2a66913706e4cb3fc870485abe34c0f3696124 (patch) | |
tree | ce6cc70005c6dfb60981aff4626d8d6fa4db2fcb | |
parent | fdd0028be1e33f540b0f24f445eaa0301a55b7d1 (diff) | |
download | monitoring-plugins-ae2a66913706e4cb3fc870485abe34c0f3696124.tar.gz |
Test updates...
1. Timetick test could fail with uptime > 115 days. Thresholds are
double type, so it's safe to put a large number even for 32bit systems.
2. Add a test based on an invalid bug report, worthy anyway.
-rw-r--r-- | plugins/t/check_snmp.t | 2 | ||||
-rwxr-xr-x | plugins/tests/check_snmp.t | 5 | ||||
-rw-r--r-- | plugins/tests/check_snmp_agent.pl | 7 |
3 files changed, 9 insertions, 5 deletions
diff --git a/plugins/t/check_snmp.t b/plugins/t/check_snmp.t index 25a2999d..04bf500b 100644 --- a/plugins/t/check_snmp.t +++ b/plugins/t/check_snmp.t | |||
@@ -124,7 +124,7 @@ SKIP: { | |||
124 | cmp_ok( $res->return_code, '==', 0, "Skipping all thresholds"); | 124 | cmp_ok( $res->return_code, '==', 0, "Skipping all thresholds"); |
125 | like($res->output, '/^SNMP OK - \d+ \w+ \d+\s.*$/', "Skipping all thresholds, result printed rather than parsed"); | 125 | like($res->output, '/^SNMP OK - \d+ \w+ \d+\s.*$/', "Skipping all thresholds, result printed rather than parsed"); |
126 | 126 | ||
127 | $res = NPTest->testCmd( "./check_snmp -H $host_snmp -C $snmp_community -o system.sysUpTime.0 -c 1000000000: -u '1/100 sec'"); | 127 | $res = NPTest->testCmd( "./check_snmp -H $host_snmp -C $snmp_community -o system.sysUpTime.0 -c 1000000000000: -u '1/100 sec'"); |
128 | cmp_ok( $res->return_code, '==', 2, "Timetick used as a threshold"); | 128 | cmp_ok( $res->return_code, '==', 2, "Timetick used as a threshold"); |
129 | like($res->output, '/^SNMP CRITICAL - \*\d+\* 1\/100 sec.*$/', "Timetick used as a threshold, parsed as numeric"); | 129 | like($res->output, '/^SNMP CRITICAL - \*\d+\* 1\/100 sec.*$/', "Timetick used as a threshold, parsed as numeric"); |
130 | 130 | ||
diff --git a/plugins/tests/check_snmp.t b/plugins/tests/check_snmp.t index b978a859..2645cc1b 100755 --- a/plugins/tests/check_snmp.t +++ b/plugins/tests/check_snmp.t | |||
@@ -8,7 +8,7 @@ use Test::More; | |||
8 | use NPTest; | 8 | use NPTest; |
9 | use FindBin qw($Bin); | 9 | use FindBin qw($Bin); |
10 | 10 | ||
11 | my $tests = 39; | 11 | my $tests = 41; |
12 | # Check that all dependent modules are available | 12 | # Check that all dependent modules are available |
13 | eval { | 13 | eval { |
14 | require NetSNMP::OID; | 14 | require NetSNMP::OID; |
@@ -185,4 +185,7 @@ $res = NPTest->testCmd( "./check_snmp -H 127.0.0.1 -C public -p $port_snmp -o .1 | |||
185 | is($res->return_code, 0, "Not really numeric test (trying best to fool it)" ); | 185 | is($res->return_code, 0, "Not really numeric test (trying best to fool it)" ); |
186 | is($res->output, 'SNMP OK - "555\"I said\"" | ', "Check string with a double quote following is still a string (looks like the perl routine will always escape though)" ); | 186 | is($res->output, 'SNMP OK - "555\"I said\"" | ', "Check string with a double quote following is still a string (looks like the perl routine will always escape though)" ); |
187 | 187 | ||
188 | $res = NPTest->testCmd( "./check_snmp -H 127.0.0.1 -C public -p $port_snmp -o .1.3.6.1.4.1.8072.3.2.67.15 -r 'CUSTOM CHECK OK'" ); | ||
189 | is($res->return_code, 0, "String check should check whole string, not a parsed number" ); | ||
190 | is($res->output, 'SNMP OK - "CUSTOM CHECK OK: foo is 12345" | ', "String check witn numbers returns whole string"); | ||
188 | 191 | ||
diff --git a/plugins/tests/check_snmp_agent.pl b/plugins/tests/check_snmp_agent.pl index 2ad8516f..8cacd527 100644 --- a/plugins/tests/check_snmp_agent.pl +++ b/plugins/tests/check_snmp_agent.pl | |||
@@ -33,9 +33,10 @@ ends with with this: C:\\'; | |||
33 | my $multilin5 = 'And now have fun with with this: "C:\\" | 33 | my $multilin5 = 'And now have fun with with this: "C:\\" |
34 | because we\'re not done yet!'; | 34 | because we\'re not done yet!'; |
35 | 35 | ||
36 | my @fields = (ASN_OCTET_STR, ASN_OCTET_STR, ASN_OCTET_STR, ASN_OCTET_STR, ASN_OCTET_STR, ASN_UNSIGNED, ASN_UNSIGNED, ASN_COUNTER, ASN_COUNTER64, ASN_UNSIGNED, ASN_COUNTER, ASN_OCTET_STR, ASN_OCTET_STR, ASN_OCTET_STR, ASN_OCTET_STR ); | 36 | # 0..15 <---- please update comment when adding/removing fields |
37 | my @values = ($multiline, $multilin2, $multilin3, $multilin4, $multilin5, 4294965296, 1000, 4294965296, uint64("18446744073709351616"), int(rand(2**32)), 64000, "stringtests", "3.5", "87.4startswithnumberbutshouldbestring", '555"I said"' ); | 37 | my @fields = (ASN_OCTET_STR, ASN_OCTET_STR, ASN_OCTET_STR, ASN_OCTET_STR, ASN_OCTET_STR, ASN_UNSIGNED, ASN_UNSIGNED, ASN_COUNTER, ASN_COUNTER64, ASN_UNSIGNED, ASN_COUNTER, ASN_OCTET_STR, ASN_OCTET_STR, ASN_OCTET_STR, ASN_OCTET_STR, ASN_OCTET_STR ); |
38 | my @incrts = (undef, undef, undef, undef, undef, 1000, -500, 1000, 100000, undef, 666, undef, undef, undef, undef ); | 38 | my @values = ($multiline, $multilin2, $multilin3, $multilin4, $multilin5, 4294965296, 1000, 4294965296, uint64("18446744073709351616"), int(rand(2**32)), 64000, "stringtests", "3.5", "87.4startswithnumberbutshouldbestring", '555"I said"', 'CUSTOM CHECK OK: foo is 12345' ); |
39 | my @incrts = (undef, undef, undef, undef, undef, 1000, -500, 1000, 100000, undef, 666, undef, undef, undef, undef, undef ); | ||
39 | 40 | ||
40 | # Number of elements in our OID | 41 | # Number of elements in our OID |
41 | my $oidelts; | 42 | my $oidelts; |