aboutsummaryrefslogtreecommitdiff
path: root/plugins/tests/check_http.t
diff options
context:
space:
mode:
authorGravatar Thomas Guyot-Sionnest <dermoth@aei.ca> 2010-11-30 23:57:04 -0500
committerGravatar Thomas Guyot-Sionnest <dermoth@aei.ca> 2010-11-30 23:57:04 -0500
commitc49fed07c3837fb7590bd05d192d6b6f6c4ae5d4 (patch)
tree568936fcb453f6a00b96462cc987b93b0ea32158 /plugins/tests/check_http.t
parent5a2814a21bff07b87a7589ef19b63c9eecb8be9f (diff)
downloadmonitoring-plugins-c49fed07c3837fb7590bd05d192d6b6f6c4ae5d4.tar.gz
Fix minor test issues
My Test::More wouldn't print the total number of tests anymore, moving the plan at the top appears to fix it. At the same time I made check-http.t eval the special modules so it can skip the tests instead of failing.
Diffstat (limited to 'plugins/tests/check_http.t')
-rwxr-xr-xplugins/tests/check_http.t35
1 files changed, 21 insertions, 14 deletions
diff --git a/plugins/tests/check_http.t b/plugins/tests/check_http.t
index f03933bd..74eff175 100755
--- a/plugins/tests/check_http.t
+++ b/plugins/tests/check_http.t
@@ -18,9 +18,24 @@ use Test::More;
use NPTest;
use FindBin qw($Bin);
-use HTTP::Daemon;
-use HTTP::Status;
-use HTTP::Response;
+my $common_tests = 66;
+my $ssl_only_tests = 6;
+# Check that all dependent modules are available
+eval {
+ require HTTP::Daemon;
+ require HTTP::Status;
+ require HTTP::Response;
+};
+
+if ($@) {
+ plan skip_all => "Missing required module for test: $@";
+} else {
+ if (-x "./check_http") {
+ plan tests => $common_tests * 2 + $ssl_only_tests;
+ } else {
+ plan skip_all => "No check_http compiled";
+ }
+}
my $servers = { http => 0 }; # HTTP::Daemon should always be available
eval { require HTTP::Daemon::SSL };
@@ -112,9 +127,9 @@ sub run_server {
$c->send_response("slow");
} elsif ($r->url->path eq "/method") {
if ($r->method eq "DELETE") {
- $c->send_error(RC_METHOD_NOT_ALLOWED);
+ $c->send_error(HTTP::Status->RC_METHOD_NOT_ALLOWED);
} elsif ($r->method eq "foo") {
- $c->send_error(RC_NOT_IMPLEMENTED);
+ $c->send_error(HTTP::Status->RC_NOT_IMPLEMENTED);
} else {
$c->send_status_line(200, $r->method);
}
@@ -138,7 +153,7 @@ sub run_server {
delete($persist[1000]);
next MAINLOOP;
} else {
- $c->send_error(RC_FORBIDDEN);
+ $c->send_error(HTTP::Status->RC_FORBIDDEN);
}
$c->close;
}
@@ -157,14 +172,6 @@ if ($ARGV[0] && $ARGV[0] eq "-d") {
}
}
-my $common_tests = 66;
-my $ssl_only_tests = 6;
-if (-x "./check_http") {
- plan tests => $common_tests * 2 + $ssl_only_tests;
-} else {
- plan skip_all => "No check_http compiled";
-}
-
my $result;
my $command = "./check_http -H 127.0.0.1";