Perl-PrereqScanner-NotQuiteLite
view release on metacpan or search on metacpan
t/scan/re.t view on Meta::CPAN
my $CU=1./sqrt($TU*$TU+1.);
# SU=TU*CU
my $SU=$TU*$CU;
# SA=CU*SF
my $SA=$CU*$SF;
# C2A=-SA*SA+1.
my $C2A=-$SA*$SA+1.;
# X=DSQRT((1./R/R-1.)*C2A+1.)+1.
my $X=sqrt((1./$R/$R-1.)*$C2A+1.)+1.;
# X=(X-2.)/X
$X=($X-2.)/$X;
# C=1.-X
my $C=1.-$X;
TEST
test(<<'TEST'); # RBOW/Date-ICal-2.678/lib/Date/ICal.pm
my @temp = $str =~ m{
([\+\-])? (?# Sign)
(P) (?# 'P' for period? This is our magic character)
(?:
(?:(\d+)Y)? (?# Years)
(?:(\d+)M)? (?# Months)
(?:(\d+)W)? (?# Weeks)
(?:(\d+)D)? (?# Days)
)?
(?:T (?# Time prefix)
(?:(\d+)H)? (?# Hours)
(?:(\d+)M)? (?# Minutes)
(?:(\d+)S)? (?# Seconds)
)?
}x;
TEST
test(<<'TEST'); # JMASON/Mail-SpamAssassin-2.64/t/SATest.pm
sub start_spamd {
my $sdargs = shift;
return if (defined($spamd_pid) && $spamd_pid > 0);
rmtree ("log/outputdir.tmp"); # some tests use this
mkdir ("log/outputdir.tmp", 0755);
if (defined $ENV{'SD_ARGS'}) {
$sdargs = $ENV{'SD_ARGS'} . " ". $sdargs;
}
my $spamdargs;
if($sdargs !~ /(?:-C\s*[^-]\S+)/) {
$sdargs = "$spamd_cf_args $spamd_localrules_args $sdargs";
}
if($sdargs !~ /(?:-p\s*[0-9]+|-o|--socketpath)/)
{
$spamdargs = "$spamd -D -p $spamdport $sdargs";
}
else
{
$spamdargs = "$spamd -D $sdargs";
}
$spamdargs =~ s!/!\\!g if ($^O =~ /^MS(DOS|Win)/i);
if ($set_test_prefs) {
warn "oops! SATest.pm: a test prefs file was created, but spamd isn't reading it\n";
}
print ("\t$spamdargs > log/$testname.spamd 2>&1 &\n");
system ("$spamdargs > log/$testname.spamd 2>&1 &");
# now find the PID
$spamd_pid = 0;
# note that the wait period increases the longer it takes,
# 20 retries works out to a total of 60 seconds
my $retries = 20;
my $wait = 0;
while ($spamd_pid <= 0) {
my $spamdlog = '';
if (open (IN, "<log/$testname.spamd")) {
while (<IN>) {
/Address already in use/ and $retries = 0;
/server pid: (\d+)/ and $spamd_pid = $1;
$spamdlog .= $_;
}
close IN;
last if ($spamd_pid);
}
sleep (int($wait++ / 4) + 1) if $retries > 0;
if ($retries-- <= 0) {
warn "spamd start failed: log: $spamdlog";
warn "\n\nMaybe you need to kill a running spamd process?\n\n";
return 0;
}
}
1;
}
sub stop_spamd {
return 0 if defined($spamd_never_started);
return 0 if defined($spamd_already_killed);
$spamd_pid ||= 0;
if ( $spamd_pid <= 1) {
print ("Invalid spamd pid: $spamd_pid. Spamd not started/crashed?\n");
return 0;
} else {
my $killed = kill (15, $spamd_pid);
print ("Killed $killed spamd instances\n");
# wait for it to exit, before returning.
for my $waitfor (0 .. 5) {
if (kill (0, $spamd_pid) == 0) { last; }
print ("Waiting for spamd at pid $spamd_pid to exit...\n");
sleep 1;
}
$spamd_pid = 0;
undef $spamd_never_started;
$spamd_already_killed = 1;
return $killed;
}
}
( run in 1.599 second using v1.01-cache-2.11-cpan-8f98c5d2c55 )