[nagios-plugins] fixed tests when there is no direct internet ...
Git Repository
git at nagios-plugins.org
Fri Dec 27 12:50:05 CET 2013
Module: nagios-plugins
Branch: maint
Commit: d8354ec15d05241dd28891771609839b73507d28
Author: Sven Nierlein <Sven.Nierlein at consol.de>
Committer: Sven Nierlein <sven at consol.de>
Date: Fri Dec 27 01:14:50 2013 +0100
URL: https://www.nagios-plugins.org/repositories/nagios-plugins/commit/?id=d8354ec
fixed tests when there is no direct internet connection
- check http had wrong number of skipped tests
- check tcp did not use the 'no internet' flag at all
---
plugins/t/check_http.t | 2 +-
plugins/t/check_tcp.t | 18 +++++++++++++-----
2 files changed, 14 insertions(+), 6 deletions(-)
diff --git a/plugins/t/check_http.t b/plugins/t/check_http.t
index 2908673..29cac69 100644
--- a/plugins/t/check_http.t
+++ b/plugins/t/check_http.t
@@ -82,7 +82,7 @@ SKIP: {
cmp_ok( $res->return_code, "==", 0, "And also when not found");
}
SKIP: {
- skip "No internet access", 11 if $internet_access eq "no";
+ skip "No internet access", 16 if $internet_access eq "no";
$res = NPTest->testCmd(
"./check_http --ssl www.verisign.com"
diff --git a/plugins/t/check_tcp.t b/plugins/t/check_tcp.t
index abb16ae..f996685 100644
--- a/plugins/t/check_tcp.t
+++ b/plugins/t/check_tcp.t
@@ -12,7 +12,6 @@ BEGIN {
use NPTest;
$has_ipv6 = NPTest::has_ipv6();
$tests = $has_ipv6 ? 14 : 11;
- plan tests => $tests;
}
@@ -25,20 +24,29 @@ my $host_nonresponsive = getTestParameter( "host_nonresponsive", "NP_HOST_NONRES
my $hostname_invalid = getTestParameter( "hostname_invalid", "NP_HOSTNAME_INVALID", "nosuchhost",
"An invalid (not known to DNS) hostname" );
+my $internet_access = getTestParameter( "NP_INTERNET_ACCESS",
+ "Is this system directly connected to the internet?",
+ "yes");
+
my $successOutput = '/^TCP OK\s-\s+[0-9]?\.?[0-9]+ second response time on port [0-9]+/';
my $failedExpect = '/^TCP WARNING\s-\sUnexpected response from host/socket on port [0-9]+/';
my $t;
+$tests = $tests - 4 if $internet_access eq "no";
+plan tests => $tests;
+
$t += checkCmd( "./check_tcp $host_tcp_http -p 80 -wt 300 -ct 600", 0, $successOutput );
$t += checkCmd( "./check_tcp $host_tcp_http -p 81 -wt 0 -ct 0 -to 1", 2 ); # use invalid port for this test
$t += checkCmd( "./check_tcp $host_nonresponsive -p 80 -wt 0 -ct 0 -to 1", 2 );
$t += checkCmd( "./check_tcp $hostname_invalid -p 80 -wt 0 -ct 0 -to 1", 2 );
-$t += checkCmd( "./check_tcp -S -D 1 -H www.verisign.com -p 443", 0 );
-$t += checkCmd( "./check_tcp -S -D 9000,1 -H www.verisign.com -p 443", 1 );
-$t += checkCmd( "./check_tcp -S -D 9000 -H www.verisign.com -p 443", 1 );
-$t += checkCmd( "./check_tcp -S -D 9000,8999 -H www.verisign.com -p 443", 2 );
+if($internet_access ne "no") {
+ $t += checkCmd( "./check_tcp -S -D 1 -H www.verisign.com -p 443", 0 );
+ $t += checkCmd( "./check_tcp -S -D 9000,1 -H www.verisign.com -p 443", 1 );
+ $t += checkCmd( "./check_tcp -S -D 9000 -H www.verisign.com -p 443", 1 );
+ $t += checkCmd( "./check_tcp -S -D 9000,8999 -H www.verisign.com -p 443", 2 );
+}
# Need the \r\n to make it more standards compliant with web servers. Need the various quotes
# so that perl doesn't interpret the \r\n and is passed onto command line correctly
More information about the Commits
mailing list