mirror of
https://github.com/monitoring-plugins/monitoring-plugins.git
synced 2026-06-09 08:42:17 -04:00
tests: testCmd has own timeout which overwrites local one
so add configurable/optional timeout to testCmd. Signed-off-by: Sven Nierlein <Sven.Nierlein@consol.de>
This commit is contained in:
parent
3529d7465d
commit
c5a6c5136a
2 changed files with 12 additions and 17 deletions
|
|
@ -627,12 +627,13 @@ sub only_output {
|
|||
}
|
||||
|
||||
sub testCmd {
|
||||
my $class = shift;
|
||||
my $class = shift;
|
||||
my $command = shift or die "No command passed to testCmd";
|
||||
my $timeout = shift || 120;
|
||||
my $object = $class->new;
|
||||
|
||||
local $SIG{'ALRM'} = sub { die("timeout in command: $command"); };
|
||||
alarm(120); # no test should take longer than 120 seconds
|
||||
alarm($timeout); # no test should take longer than 120 seconds
|
||||
|
||||
my $output = `$command`;
|
||||
$object->return_code($? >> 8);
|
||||
|
|
|
|||
|
|
@ -392,27 +392,21 @@ sub run_common_tests {
|
|||
skip "This doesn't seems to work all the time", 1 unless ($ENV{HTTP_EXTERNAL});
|
||||
$cmd = "$command -f follow -u /redir_external -t 5";
|
||||
eval {
|
||||
local $SIG{ALRM} = sub { die "alarm\n" };
|
||||
alarm(2);
|
||||
$result = NPTest->testCmd( $cmd );
|
||||
alarm(0); };
|
||||
is( $@, "alarm\n", $cmd );
|
||||
$result = NPTest->testCmd( $cmd, 2 );
|
||||
};
|
||||
like( $@, "/timeout in command: $cmd/", $cmd );
|
||||
}
|
||||
|
||||
$cmd = "$command -u /timeout -t 5";
|
||||
eval {
|
||||
local $SIG{ALRM} = sub { die "alarm\n" };
|
||||
alarm(2);
|
||||
$result = NPTest->testCmd( $cmd );
|
||||
alarm(0); };
|
||||
is( $@, "alarm\n", $cmd );
|
||||
$result = NPTest->testCmd( $cmd, 2 );
|
||||
};
|
||||
like( $@, "/timeout in command: $cmd/", $cmd );
|
||||
|
||||
$cmd = "$command -f follow -u /redir_timeout -t 2";
|
||||
eval {
|
||||
local $SIG{ALRM} = sub { die "alarm\n" };
|
||||
alarm(5);
|
||||
$result = NPTest->testCmd( $cmd );
|
||||
alarm(0); };
|
||||
isnt( $@, "alarm\n", $cmd );
|
||||
$result = NPTest->testCmd( $cmd, 5 );
|
||||
};
|
||||
is( $@, "", $cmd );
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue