Code

Allow rsyncing to local paths
[nagiosplug.git] / plugins / t / check_time.t
1 #! /usr/bin/perl -w -I ..
2 #
3 # System Time Tests via check_time
4 #
5 #
7 use strict;
8 use Test;
9 use NPTest;
11 use vars qw($tests);
12 BEGIN {$tests = 8; plan tests => $tests}
14 my $host_udp_time      = getTestParameter( "host_udp_time",      "NP_HOST_UDP_TIME",      "localhost",
15                                            "A host providing the UDP Time Service" );
17 my $host_nonresponsive = getTestParameter( "host_nonresponsive", "NP_HOST_NONRESPONSIVE", "10.0.0.1",
18                                            "The hostname of system not responsive to network requests" );
20 my $hostname_invalid   = getTestParameter( "hostname_invalid",   "NP_HOSTNAME_INVALID",   "nosuchhost",
21                                            "An invalid (not known to DNS) hostname" );
23 my $successOutput = '/^TIME OK - [0-9]+ second time difference/';
25 my %exceptions = ( 3 => "No time server present?");
27 my $t;
29 # standard mode
30 $t += checkCmd( "./check_time -H $host_udp_time -w 999999,59       -c 999999,59       -t 60", 0, $successOutput, %exceptions );
31 $t += checkCmd( "./check_time -H $host_udp_time -w 999999    -W 59 -c 999999    -C 59 -t 60", 0, $successOutput, %exceptions );
33 # reverse compatibility mode
34 $t += checkCmd( "./check_time    $host_udp_time -wt 59 -ct 59 -cd 999999 -wd 999999 -to 60",  0, $successOutput, %exceptions );
36 # failure mode
37 $t += checkCmd( "./check_time -H $host_nonresponsive -t 1", 2 );
38 $t += checkCmd( "./check_time -H $hostname_invalid   -t 1", 3 );
40 exit(0) if defined($Test::Harness::VERSION);
41 exit($tests - $t);