Branch Coverage

blib/lib/File/Tail/Multi.pm
Criterion Covered Total %
branch 98 314 31.2


line true false branch
103 0 12 unless exists $$args{$keys}
110 1 0 if ($$args{'Files'})
150 0 0 if ($keys eq 'Files')
153 0 0 if $$args{$keys}
212 1 12 if (/MaxAge/)
213 0 1 if ($$args{'MaxAge'} < 0)
219 1 11 if (/NumLines/)
220 0 1 if ($$args{'NumLines'} < 0)
226 1 10 if (/OutputPrefix/)
227 0 1 unless ($$args{'OutputPrefix'} =~ /^(p|f|t|tg|tc|pt|ptg|ptc|ft|ftg|ftc|tp|tpg|tpc|tf|tfg|tfc)$/)
228 0 0 unless $$args{'OutputPrefix'}
234 2 8 if (/Pattern/)
235 0 2 unless $$args{'Pattern'}
237 0 2 if (ref $$args{'Pattern'} ne 'ARRAY' and not -f $$args{'Pattern'})
243 0 8 if (/ExceptPattern/)
244 0 0 unless $$args{'ExceptPattern'}
245 0 0 if (ref $$args{'ExceptPattern'} ne 'ARRAY' and not -f $$args{'ExceptPattern'})
251 1 7 if (/Debug/)
252 0 1 unless ($$args{'Debug'} =~ /^[0|1]$/)
258 1 6 if (/ScanForFiles/)
259 0 1 if ($$args{'ScanForFiles'} < 0)
265 1 5 if (/RemoveDuplicate/)
266 0 1 unless ($$args{'RemoveDuplicate'} =~ /^[0|1]$/)
272 1 4 if (/Function/)
273 0 1 if (ref $$args{'Function'} ne 'CODE')
274 0 0 unless $$args{'Function'}
280 1 3 if (/Files/)
281 0 1 unless $$args{'Files'}
282 0 1 unless ($$args{'Files'})
288 1 2 if (/LastRun_File/)
289 1 0 unless $$args{'LastRun_File'}
291 0 0 unless (-f $$args{'LastRun_File'})
297 0 2 if (/DO_MD5_Check/)
298 0 0 unless ($$args{'DO_MD5_Check'} =~ /^[0|1]$/)
314 0 1 unless my $argvref = shift()
315 0 1 unless my $params = shift()
316 0 1 unless my $arglist = shift()
319 1 0 if (ref $argvref eq 'HASH') { }
324 6 0 if (exists $$params{$param})
329 6 0 if ($var ne '')
335 0 0 unless (exists $$params{$param})
344 0 0 unless defined $var
348 0 0 if ($var ne '') { }
0 0 elsif (not exists $$params{$param}) { }
349 0 0 $i <= $#$argvref ? :
362 6 6 if ($var ne '' and not exists $args{$param})
385 0 1 if (%Attribute)
394 0 1 if (%Attribute)
395 0 0 if $FileHash{$FILE}
400 1 0 stat $FILE ? :
401 0 1 $File::Tail::Multi::st_size < 42 ? :
485 0 1 if (-d $FILE) { }
486 0 0 if $File::Tail::Multi::DEBUG
488 0 0 if (defined $d)
491 0 0 if (-T $file)
508 0 1 unless ($FILE =~ m[^/] or $MSWin32)
509 0 0 if $File::Tail::Multi::DEBUG
512 0 1 unless ($FILE =~ /^\w:/ or $FILE =~ m[^//] or not $MSWin32)
513 0 0 if $File::Tail::Multi::DEBUG
519 0 1 unless stat $FILE
525 0 1 if (exists $path_file{$key} and not $MSWin32)
526 0 0 if $File::Tail::Multi::DEBUG
527 0 0 if $File::Tail::Multi::DEBUG
533 1 0 if (-T $FILE) { }
537 0 0 if $File::Tail::Multi::DEBUG
560 0 0 if ($$rFD{'ScanForFiles'} and $File::Tail::Multi::LastScan + $$rFD{'ScanForFiles'} * 60 < $PresentTime or $File::Tail::Multi::FileAttributeChanged)
563 0 0 if $File::Tail::Multi::DEBUG
572 0 0 if ($File::Tail::Multi::DEBUG)
588 0 0 if ($$FH{'exist'} and $$FH{'open'})
589 0 0 if (defined $$FH{'fh'})
594 0 0 if defined $File::Tail::Multi::LastRun_File
596 0 0 if ($$FH{'stat'}{'mtime'} < $PresentTime - $$rFD{'MaxAge'} * 60)
607 0 0 if $$rFD{'Pattern'}
610 0 0 if $$rFD{'ExceptPattern'}
613 0 0 if $$rFD{'RemoveDuplicate'}
616 0 0 if $$rFD{'OutputPrefix'}
619 0 0 if ($$rFD{'Function'})
645 0 1 if ($$rFD{'ScanForFiles'} and $File::Tail::Multi::LastScan + $$rFD{'ScanForFiles'} * 60 < $PresentTime or $File::Tail::Multi::FileAttributeChanged)
648 0 0 if $File::Tail::Multi::DEBUG
657 0 1 if ($File::Tail::Multi::DEBUG)
673 1 0 if ($$FH{'exist'} and $$FH{'open'})
674 1 0 if (defined $$FH{'fh'})
679 0 1 if defined $File::Tail::Multi::LastRun_File
681 1 0 if ($$FH{'stat'}{'mtime'} < $PresentTime - $$rFD{'MaxAge'} * 60)
690 1 0 if $$rFD{'Pattern'}
693 1 0 if $$rFD{'ExceptPattern'}
696 1 0 if $$rFD{'RemoveDuplicate'}
699 1 0 if $$rFD{'OutputPrefix'}
702 1 0 if ($$rFD{'Function'})
740 0 0 if ($tail_file eq $fileName)
761 0 0 if ($tail_file eq $fileName)
831 0 0 if ($$FH{'FileState'} != $$FH{'LastState'}) { }
861 2 0 if (ref $r_listofpatterns eq 'ARRAY') { }
870 0 0 if (-f $r_listofpatterns) { }
875 0 0 unless stat $patternfile
879 0 0 if /^#/
880 0 0 if /^\s*$/
932 0 1 if ($$rFD{'OutputPrefix'} =~ /g/)
936 0 1 if ($$rFD{'OutputPrefix'} =~ /c/)
942 0 10 if $TmpOutputPrefix eq 'p'
944 0 10 if $TmpOutputPrefix eq 'f'
946 0 10 if $TmpOutputPrefix eq 't'
948 0 10 if $TmpOutputPrefix eq 'pt'
950 0 10 if $TmpOutputPrefix eq 'tp'
952 10 0 if $TmpOutputPrefix eq 'ft'
954 0 10 if $TmpOutputPrefix eq 'tf'
973 1 0 unless defined $pattern_sub
977 11 42 if &$pattern_sub($LINE)
994 1 0 unless defined $exceptpattern_sub
998 10 1 unless &$exceptpattern_sub($LINE)
1133 0 1 if ($FS == 0)
1136 0 1 if ($FS == 2 or $FS == 4 or $FS == 6)
1140 0 1 if ($FS == 1 or $FS == 3 or $FS == 5 or $FS == 7)
1144 1 0 if ($FS == 8 or $FS == 14)
1147 1 0 if (defined $$FH{'fh'})
1153 0 0 if ($FS == 9)
1156 0 0 if (defined $$FH{'fh'})
1161 0 0 if ($FS == 12)
1163 0 0 if ($$FH{'open'})
1168 0 0 if ($FS == 10 or $FS == 11 or $FS == 13 or $FS == 15)
1170 0 0 if ($$FH{'open'})
1179 0 1 if $File::Tail::Multi::DEBUG
1198 0 0 if ($$FH{'LastMtime'} == $$FH{'stat'}{'mtime'} and $$FH{'stat'}{'mtime'} < $PresentTime - $$rFD{'MaxAge'} * 60 and $$FH{'open'})
1201 0 0 if defined $$FH{'fh'}
1206 0 0 if ($$FH{'LastMtime'} == $$FH{'stat'}{'mtime'})
1209 0 0 if (not $$FH{'open'} and $$FH{'LastMtime'} < $$FH{'stat'}{'mtime'})
1230 1 0 stat($$FH{'name'}) ? :
1231 0 1 unless $$FH{'exist'}
1255 0 10 if $File::Tail::Multi::TC
1256 0 10 $File::Tail::Multi::GMT ? :
1278 0 0 if ($$rFD{'Debug'}) { }
1296 0 0 unless defined $$FH{'fh'}
1297 0 0 if $File::Tail::Multi::DEBUG
1317 4 0 if (defined $$FH{'online'})
1341 0 1 if ($NewState > 15)
1368 0 1 if ($seekbacklines < 0) { }
0 1 elsif ($seekbacklines > 0) { }
1378 1 0 if ($$FH{'LastState'} == 8) { }
1380 0 1 if defined $File::Tail::Multi::LastRun_File
1381 1 0 if (int $$FH{'lastrun_stat'}{'pos'} <= int $$FH{'stat'}{'size'} and $$FH{'lastrun_stat'}{'pos'} ne '')
1398 0 0 if $seekbacklines != 0
1422 0 0 unless (exists $$rFD{$attribute})
1425 0 0 if ($attribute eq 'Files')
1429 0 0 if (@_) { }
1448 0 0 if (-e "$File::Tail::Multi::LastRun_File")
1449 0 0 unless open my $curat_fh, '<', $File::Tail::Multi::LastRun_File
1456 0 0 if ($logged_name eq $$FH{'name'}) { }
1462 0 0 if $logged_ino ne $$FH{'stat'}{'ino'}
1468 0 0 if ($File::Tail::Multi::DO_MD5_Check)
1469 0 0 unless defined $md5_len and $md5_len
1470 0 0 if not defined $md5_chksum && $md5_chksum
1487 0 0 if (-e "$File::Tail::Multi::LastRun_File")
1488 0 0 unless open my $curat_fh, '<', $File::Tail::Multi::LastRun_File
1495 0 0 if ($logged_name eq $$FH{'name'})
1502 0 0 if $found == -1
1506 0 0 unless open my $curpos_fh, '>', $File::Tail::Multi::LastRun_File
1523 0 0 unless $File::Tail::Multi::DO_MD5_Check