diff options
Diffstat (limited to 'plugins/t/check_ping.t')
-rw-r--r-- | plugins/t/check_ping.t | 47 |
1 files changed, 25 insertions, 22 deletions
diff --git a/plugins/t/check_ping.t b/plugins/t/check_ping.t index 97bc660e..49c568a6 100644 --- a/plugins/t/check_ping.t +++ b/plugins/t/check_ping.t @@ -1,33 +1,36 @@ -#! /usr/bin/perl -w +#! /usr/bin/perl -w -I .. +# +# Ping Response Tests via check_ping +# +# $Id$ +# use strict; -use Cache; use Test; +use NPTest; + use vars qw($tests); -BEGIN {$tests = 5; plan tests => $tests} +BEGIN {$tests = 6; plan tests => $tests} + +my $successOutput = '/PING (ok|OK) - Packet loss = +[0-9]{1,2}\%, +RTA = [\.0-9]+ ms/'; +my $failureOutput = '/Packet loss = +[0-9]{1,2}\%, +RTA = [\.0-9]+ ms/'; + +my $host_responsive = getTestParameter( "host_responsive", "NP_HOST_RESPONSIVE", "localhost", + "The hostname of system responsive to network requests" ); + +my $host_nonresponsive = getTestParameter( "host_nonresponsive", "NP_HOST_NONRESPONSIVE", "10.0.0.1", + "The hostname of system not responsive to network requests" ); + +my $hostname_invalid = getTestParameter( "hostname_invalid", "NP_HOSTNAME_INVALID", "nosuchhost", + "An invalid (not known to DNS) hostname" ); -my $null = ''; -my $cmd; -my $str; my $t; -$cmd = "./check_ping 127.0.0.1 100 100 1000 1000 -p 1"; -$str = `$cmd`; -$t += ok $?>>8,0; -print "Test was: $cmd\n" if ($?); -$t += ok $str, '/PING (ok|OK) - Packet loss = +[0-9]{1,2}\%, +RTA = [\.0-9]+ ms/'; - -$cmd = "./check_ping 127.0.0.1 0 0 0 0 -p 1"; -$str = `$cmd`; -$t += ok $?>>8,2; -print "Test was: $cmd\n" unless ($?); -$t += ok $str, '/Packet loss = +[0-9]{1,2}\%, +RTA = [\.0-9]+ ms/'; - -$cmd = "./check_ping $Cache::nullhost 0 0 0 0 -p 1 -to 1"; -$str = `$cmd`; -$t += ok $?>>8,2; -print "Test was: $cmd\n" unless ($?); +$t += checkCmd( "./check_ping $host_responsive 100 100 1000 1000 -p 1", 0, $successOutput ); +$t += checkCmd( "./check_ping $host_responsive 0 0 0 0 -p 1", 2, $failureOutput ); +$t += checkCmd( "./check_ping $host_nonresponsive 0 0 0 0 -p 1 -to 1", 2 ); +$t += checkCmd( "./check_ping $hostname_invalid 0 0 0 0 -p 1 -to 1", 3 ); exit(0) if defined($Test::Harness::VERSION); exit($tests - $t); |