Condition Coverage

blib/lib/Treex/PML/IO.pm
Criterion Covered Total %
condition 29 181 16.0


and 3 conditions

line !l l&&!r l&&r condition
208 0 345 0 defined $fh and defined $encoding
345 0 0 defined $fh and defined $encoding and $] >= "5.008"
233 351 0 107 builtin::blessed($uri) and $uri->isa("URI")
303 378 0 729 builtin::blessed($url) and $url->isa("URI")
304 0 351 27 $uri eq $url || URI::Escape::uri_unescape($uri) eq $url and $url =~ m[^\s*[[:alnum:]]+://]
322 0 0 32 builtin::blessed($href) and $href->isa("URI")
370 0 0 0 builtin::blessed($f1) && $f1->isa('URI')
371 0 0 0 builtin::blessed($f2) && $f2->isa('URI')
374 0 0 0 not ref $f1 || ref $f2 and $^O ne "MSWin32"
0 0 0 not ref $f1 || ref $f2 and $^O ne "MSWin32" and -f $f1
0 0 0 not ref $f1 || ref $f2 and $^O ne "MSWin32" and -f $f1 and -f $f2
393 0 0 0 $d1 == $d2 && $i1 != 0 && $i1 == $i2
418 0 0 0 -x $Treex::PML::IO::gzip and -x $Treex::PML::IO::zcat
496 0 0 0 eval { do { require IO::Zlib; $tmp = "IO::Zlib"->new } } and $tmp
572 0 172 15 get_protocol($file) eq "file" and _is_gzip($uri)
579 0 0 15 eval { do { require IO::Zlib; $tmp = "IO::Zlib"->new } } and $tmp
613 0 0 0 $status and $status->is_error
0 0 0 $status and $status->is_error and $status->code == 401
656 0 0 0 $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh
0 0 0 $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh and $proto =~ /^(ssh|fish|sftp)$/
668 0 0 0 $Treex::PML::IO::kioclient and -x $Treex::PML::IO::kioclient
677 0 0 0 $Treex::PML::IO::curl and -x $Treex::PML::IO::curl
0 0 0 $Treex::PML::IO::curl and -x $Treex::PML::IO::curl and $proto =~ /^(?:https?|ftps?|gopher)$/
687 0 0 0 defined $user_pipe and not $user_pipe =~ /^\|/
713 0 0 0 $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh
0 0 0 $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh and $proto =~ /^(ssh|fish|sftp)$/
724 0 0 0 $Treex::PML::IO::kioclient and -x $Treex::PML::IO::kioclient
733 0 0 0 $Treex::PML::IO::curl and -x $Treex::PML::IO::curl
0 0 0 $Treex::PML::IO::curl and -x $Treex::PML::IO::curl and $proto =~ /^(?:ftps?)$/
802 0 0 0 $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh
0 0 0 $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh and $proto =~ /^(ssh|fish|sftp)$/
812 0 0 0 $Treex::PML::IO::kioclient and -x $Treex::PML::IO::kioclient
840 0 0 0 $proto1 eq "file" and $proto2 eq "file"
862 0 0 0 $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh
0 0 0 $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh and $proto =~ /^(ssh|fish|sftp)$/
866 0 0 0 $uri2 =~ m[^\s*(?:ssh|sftp|fish):(?://)?([^-/][^/]*)(/.*)$] and $1 eq $host
878 0 0 0 $Treex::PML::IO::kioclient and -x $Treex::PML::IO::kioclient
946 0 214 0 builtin::blessed($fh) and $fh->isa("IO::Zlib")
949 0 0 214 ref $fh && $fh->close
975 131 0 0 $is_temporary and $local_file ne $uri

or 2 conditions

line l !l condition
97 0 8 $Treex::PML::IO::ssh_opts ||= "-C"
98 0 8 $Treex::PML::IO::reject_proto ||= "^(pop3?s?|imaps?)\\\$"
234 104 3 $uri->scheme || 'file'
420 0 0 "| $pipe | $Treex::PML::IO::gzip $Treex::PML::IO::gzip_opts > " . quote_filename($file) || undef $fh
422 0 0 "$Treex::PML::IO::zcat $Treex::PML::IO::zcat_opts < " . quote_filename($file) . " | $pipe |" || undef $fh
429 0 0 "| $pipe > " . quote_filename($file) || undef $fh
431 0 0 "$pipe < " . quote_filename($file) . ' |' || undef $fh
700 0 0 $cmd || undef $fh
910 179 0 open_file($filename, $rw) || undef
912 35 0 get_store_fh($filename) || undef
974 131 0 open_backend($local_file, 'r') || (return)

or 3 conditions

line l !l&&r !l&&!r condition
59 0 0 0 $role eq "IO" or $role eq __PACKAGE__
78 8 0 0 eval { do { require File::Which; \&File::Which::which } } || sub { }
92 0 8 0 $Treex::PML::IO::zcat ||= _find_exe("zcat")
93 0 8 0 $Treex::PML::IO::gzip ||= _find_exe("gzip")
94 0 0 8 $Treex::PML::IO::kioclient ||= _find_exe("kioclient")
95 0 0 8 $Treex::PML::IO::ssh ||= _find_exe("ssh")
96 0 8 0 $Treex::PML::IO::curl ||= _find_exe("curl")
161 0 0 0 ref $handler eq "CODE" or ref $handler eq "ARRAY"
304 378 0 0 $uri eq $url || URI::Escape::uri_unescape($uri) eq $url
374 0 0 0 ref $f1 || ref $f2
530 0 0 0 $proto eq "ntred" or $proto =~ /$Treex::PML::IO::reject_proto/
712 0 0 0 $proto eq "http" or $proto eq "https"
756 0 0 0 $proto eq "ntred" or $proto =~ /$Treex::PML::IO::reject_proto/