diff options
Diffstat (limited to 'plugins/tests')
| -rwxr-xr-x | plugins/tests/check_snmp.t | 17 | ||||
| -rw-r--r-- | plugins/tests/check_snmp_agent.pl | 6 |
2 files changed, 19 insertions, 4 deletions
diff --git a/plugins/tests/check_snmp.t b/plugins/tests/check_snmp.t index e7ad1927..08348d23 100755 --- a/plugins/tests/check_snmp.t +++ b/plugins/tests/check_snmp.t | |||
| @@ -51,7 +51,7 @@ if ($ARGV[0] && $ARGV[0] eq "-d") { | |||
| 51 | } | 51 | } |
| 52 | } | 52 | } |
| 53 | 53 | ||
| 54 | my $tests = 33; | 54 | my $tests = 41; |
| 55 | if (-x "./check_snmp") { | 55 | if (-x "./check_snmp") { |
| 56 | plan tests => $tests; | 56 | plan tests => $tests; |
| 57 | } else { | 57 | } else { |
| @@ -170,5 +170,20 @@ $res = NPTest->testCmd( "./check_snmp -H 127.0.0.1 -C public -p $port_snmp -o .1 | |||
| 170 | is($res->return_code, 0, "OK as string doesn't match but inverted" ); | 170 | is($res->return_code, 0, "OK as string doesn't match but inverted" ); |
| 171 | is($res->output, 'SNMP OK - "stringtests" | ', "OK as inverted string no match" ); | 171 | is($res->output, 'SNMP OK - "stringtests" | ', "OK as inverted string no match" ); |
| 172 | 172 | ||
| 173 | $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.12" ); | ||
| 174 | is($res->return_code, 0, "Numeric in string test" ); | ||
| 175 | is($res->output, 'SNMP OK - 3.5 | iso.3.6.1.4.1.8072.3.2.67.12=3.5 ', "Check seen as numeric" ); | ||
| 176 | |||
| 177 | $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.12 -w 4:5" ); | ||
| 178 | is($res->return_code, 1, "Numeric in string test" ); | ||
| 179 | is($res->output, 'SNMP WARNING - *3.5* | iso.3.6.1.4.1.8072.3.2.67.12=3.5 ', "WARNING threshold checks for string masquerading as number" ); | ||
| 180 | |||
| 181 | $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.13" ); | ||
| 182 | is($res->return_code, 0, "Not really numeric test" ); | ||
| 183 | is($res->output, 'SNMP OK - "87.4startswithnumberbutshouldbestring" | ', "Check string with numeric start is still string" ); | ||
| 184 | |||
| 185 | $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.14" ); | ||
| 186 | is($res->return_code, 0, "Not really numeric test (trying best to fool it)" ); | ||
| 187 | 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)" ); | ||
| 173 | 188 | ||
| 174 | 189 | ||
diff --git a/plugins/tests/check_snmp_agent.pl b/plugins/tests/check_snmp_agent.pl index 8784ab12..2ad8516f 100644 --- a/plugins/tests/check_snmp_agent.pl +++ b/plugins/tests/check_snmp_agent.pl | |||
| @@ -33,9 +33,9 @@ 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); | 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 ); |
| 37 | my @values = ($multiline, $multilin2, $multilin3, $multilin4, $multilin5, 4294965296, 1000, 4294965296, uint64("18446744073709351616"), int(rand(2**32)), 64000, "stringtests"); | 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"' ); |
| 38 | my @incrts = (undef, undef, undef, undef, undef, 1000, -500, 1000, 100000, undef, 666, undef); | 38 | my @incrts = (undef, undef, undef, undef, undef, 1000, -500, 1000, 100000, undef, 666, undef, undef, undef, undef ); |
| 39 | 39 | ||
| 40 | # Number of elements in our OID | 40 | # Number of elements in our OID |
| 41 | my $oidelts; | 41 | my $oidelts; |
