You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
#!/usr/bin/perl -w
|
|
|
|
|
|
|
|
use Test::Command tests => 9;
|
|
|
|
use Test::More;
|
|
|
|
use Time::HiRes qw(gettimeofday tv_interval);
|
|
|
|
use File::Temp;
|
|
|
|
|
|
|
|
# -n show targets by name (-d is equivalent)
|
|
|
|
# -p n interval between ping packets to one target (in millisec)
|
|
|
|
# (in looping and counting modes, default 1000)
|
|
|
|
# -q quiet (don't show per-target/per-ping results)
|
|
|
|
# -Q n same as -q, but show summary every n seconds
|
|
|
|
|
|
|
|
# fping -n
|
|
|
|
{
|
|
|
|
my $cmd = Test::Command->new(cmd => "fping -n 8.8.8.8");
|
|
|
|
$cmd->exit_is_num(0);
|
|
|
|
$cmd->stdout_is_eq("google-public-dns-a.google.com is alive\n");
|
|
|
|
$cmd->stderr_is_eq("");
|
|
|
|
}
|
|
|
|
|
|
|
|
# fping -q
|
|
|
|
{
|
|
|
|
my $cmd = Test::Command->new(cmd => "fping -q -p 100 -c 3 127.0.0.1");
|
|
|
|
$cmd->exit_is_num(0);
|
|
|
|
$cmd->stdout_is_eq("");
|
|
|
|
$cmd->stderr_like(qr{127\.0\.0\.1 : xmt/rcv/%loss = 3/3/0%, min/avg/max = 0\.\d+/0\.\d+/0\.\d+
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
# fping -Q
|
|
|
|
{
|
|
|
|
my $cmd = Test::Command->new(cmd => "fping -Q 1 -p 400 -c 4 127.0.0.1");
|
|
|
|
$cmd->exit_is_num(0);
|
|
|
|
$cmd->stdout_is_eq("");
|
|
|
|
$cmd->stderr_like(qr{\[\d+:\d+:\d+\]
|
|
|
|
127\.0\.0\.1 : xmt/rcv/%loss = 3/3/0%, min/avg/max = 0\.\d+/0\.\d+/0\.\d+
|
|
|
|
127\.0\.0\.1 : xmt/rcv/%loss = 4/4/0%, min/avg/max = 0\.\d+/0\.\d+/0\.\d+
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
|