Branch Coverage

blib/lib/CPAN/FTP.pm
Criterion Covered Total %
branch 56 452 12.3


line true false branch
26 0 0 if exists &Errno::EAGAIN and $! == &Errno::EAGAIN
27 0 0 if ++$cnt > 100000
38 0 0 if defined $ftpstats_size and $ftpstats_size <= 0
39 0 0 $fh ? :
43 0 0 if $^O eq "MSWin32"
52 0 0 if ($sleep > 3)
59 0 0 if ($sleep <= 6) { }
67 0 0 if ($@)
68 0 0 if (ref $@) { }
69 0 0 if (ref $@ eq 'CPAN::Exception::yaml_not_installed') { }
0 0 elsif (ref $@ eq 'CPAN::Exception::yaml_process_error') { }
80 0 0 unless rename $file, $to
93 6 0 if ('CPAN'->has_inst('Time::HiRes')) { }
115 0 3 if $CPAN::DEBUG
116 0 3 if ($CPAN::META->has_inst($yaml_module))
123 0 0 if $sdebug
125 0 0 if $fh and defined fileno $fh
127 0 0 if $sdebug
128 0 0 if $sdebug
133 0 0 unless defined $ftpstats_size
136 0 0 unless $fullstats->{'history'}
145 0 0 if $sdebug
146 0 0 if $sdebug
147 0 0 if $sdebug
151 0 0 if ($sdebug)
160 0 0 if $^O eq "MSWin32" or $^O eq "os2"
161 0 0 if -e $sfile
162 0 0 unless rename "$sfile.$$", $sfile
174 0 0 unless (@stat)
180 0 0 unless chmod $stat[2], $dest
183 0 0 if $@
186 0 0 unless (chown $stat[4], $stat[5], $dest)
194 0 0 if $@
202 0 3 if ($file =~ s[/CHECKSUMS(.gz)?$][])
206 0 0 if $last->{'end'} - time > 3600
207 0 0 unless $last->{'file'}
208 0 0 unless $file eq dirname($last->{'file'})
212 0 3 if ($CPAN::Config->{'randomize_urllist'} and rand 1 < $CPAN::Config->{'randomize_urllist'}) { }
226 0 3 if $CPAN::DEBUG
229 0 3 unless (ref $CPAN::Config->{'urllist'} eq "ARRAY")
233 3 0 if defined $_
234 0 3 if $with_defaults
236 0 3 if $CPAN::DEBUG
237 0 3 if (UNIVERSAL::can($u, 'text')) { }
238 0 0 unless substr($u->{'TEXT'}, -1) eq "/"
240 3 0 unless substr($u, -1) eq "/"
250 0 0 if $CPAN::DEBUG
255 0 0 unless ($ftp)
259 0 0 unless defined $ftp
260 0 0 if $CPAN::DEBUG{'FTP'} & $CPAN::DEBUG
262 0 0 unless ($ftp->login("anonymous", $Config::Config{'cf_email'}))
267 0 0 unless ($ftp->cwd($dir))
273 0 0 if $CPAN::DEBUG
274 0 0 unless ($ftp->get($file, $target))
315 0 3 unless defined $aslocal
317 0 3 if ($CPAN::DEBUG)
323 0 3 if not defined $CPAN::FTP::connect_to_internet_ok and defined $_
326 0 3 if (not defined $ph or $ph) { }
335 0 0 if (-f $aslocal and -r _ and not $force & 1)
337 0 0 if ($size = -s $aslocal) { }
338 0 0 if $CPAN::DEBUG
342 0 0 unless unlink $aslocal
353 0 0 if $self->have_promising_aslocal($aslocal, $force)
359 0 0 if ($CPAN::META->has_usable('HTTP::Tiny') and $CPAN::META->has_usable('Net::SSLeay') and $CPAN::META->has_usable('IO::Socket::SSL') or $CPAN::Config->{'curl'} or $CPAN::Config->{'wget'}) { }
368 0 0 if $CPAN::Config->{$prx}
374 0 0 @missing_modules == 1 ? :
377 0 0 if $CPAN::Config->{$prx}
382 0 0 if ($ret) { }
383 0 0 if $CPAN::DEBUG
384 0 0 if ($ret eq $aslocal_tempfile)
387 0 0 unless rename $aslocal_tempfile, $aslocal
403 0 0 if ($CPAN::META->has_usable('HTTP::Tiny')) { }
0 0 elsif ($CPAN::Config->{'curl'} or $CPAN::Config->{'wget'}) { }
410 0 0 !($url =~ /\.gz(?!\n)\Z/) ? :
413 0 0 if ($res and $res->{'success'}) { }
0 0 elsif ($res and $res->{'status'} ne '599') { }
0 0 elsif ($res and $res->{'status'} eq '599') { }
449 0 0 unless defined $dlprg_configured
451 0 0 if ($dlprg eq 'wget') { }
0 0 elsif ($dlprg eq 'curl') { }
456 0 0 if ($proxy_vars->{'http_proxy'})
469 0 0 if $CPAN::DEBUG
471 0 0 if ($wstatus == 0) { }
475 0 0 -f $aslocal ? :
491 0 3 if ($^O eq "MacOS")
495 0 0 if (length $name > 31)
515 0 3 if $self->have_promising_aslocal($aslocal, $force)
517 0 3 if (-f $aslocal)
524 0 3 if ($CPAN::META->has_usable("LWP::UserAgent"))
525 0 0 unless ($CPAN::FTP::Ua)
528 0 0 if ($@) { }
529 0 0 if $CPAN::DEBUG
534 0 0 if $var = $CPAN::Config->{'ftp_proxy'} || $ENV{'ftp_proxy'}
536 0 0 if $var = $CPAN::Config->{'http_proxy'} || $ENV{'http_proxy'}
538 0 0 if $var = $CPAN::Config->{'no_proxy'} || $ENV{'no_proxy'}
543 0 9 if $CPAN::Config->{$prx}
551 3 0 if ($force & 2) { }
556 0 0 unless (substr($ccurllist->[$b], 0, 4) eq "file") <=> (substr($ccurllist->[$a], 0, 4) eq "file")
569 0 3 if $CPAN::DEBUG
581 2 1 if ($CPAN::FTP::Themethod) { }
587 0 3 if $^O eq "MacOS"
591 0 3 exists $CPAN::Config->{'ftp_passive'} ? :
597 0 3 unless $scheme and "file" eq $scheme
600 0 3 if ($defaultsites) { }
601 0 0 unless (defined $CPAN::FTP::connect_to_internet_ok)
611 0 0 if ($answer =~ /^y/i) { }
617 0 0 if ($CPAN::FTP::connect_to_internet_ok) { }
628 3 0 $level =~ /dleasy/ ? :
632 0 3 if $CPAN::DEBUG
634 0 3 if (my $recommend = $self->_recommend_url_for($file, \@urllist))
638 0 3 if $CPAN::DEBUG
640 3 0 if ($ret) { }
641 0 3 if $CPAN::DEBUG
642 0 3 if ($ret eq $aslocal_tempfile) { }
3 0 elsif (-f $ret and $scheme eq 'file') { }
645 0 0 unless rename $aslocal_tempfile, $aslocal
658 0 3 if $CPAN::DEBUG
662 0 0 if $CPAN::Signal
665 3 0 if ($ret)
668 0 3 if $CPAN::DEBUG
670 0 3 if $CPAN::DEBUG
671 3 0 if ($ret)
675 0 0 unless ($CPAN::Signal)
678 0 0 if (@{$CPAN::Config->{'urllist'};}) { }
691 0 0 if ($maybe_restore)
703 0 0 unless -w $aslocal_dir
714 3 0 if $scheme
735 0 3 if $CPAN::DEBUG
736 3 0 if ($url =~ /^file:/)
738 3 0 if ($CPAN::META->has_inst('URI::URL')) { }
751 0 0 if not -f $l and $l =~ m[^/\w:]
754 0 3 if $CPAN::DEBUG
755 0 3 if (-f $l and -r _)
762 3 0 if ($l =~ /(.+)\.gz$/) { }
0 0 elsif (-f $l and -r _) { }
0 0 elsif (-f "$l.gz") { }
764 3 0 if (-f $ungz and -r _) { }
0 0 elsif (-f $l and -r _) { }
770 0 0 if (-f $aslocal and -s _) { }
0 0 elsif (not -s $aslocal) { }
0 0 elsif (-f $l) { }
778 0 0 if $@
792 0 0 if $CPAN::DEBUG
794 0 0 if (-f $aslocal) { }
799 0 0 if $@
806 0 0 if $CPAN::DEBUG
807 0 0 if ($CPAN::META->has_usable('LWP')) { }
0 0 elsif ($url =~ /^http:/i and $CPAN::META->has_usable('HTTP::Tiny')) { }
809 0 0 unless ($CPAN::FTP::Ua)
812 0 0 if ($@)
817 0 0 if ($res->is_success) { }
0 0 elsif (not $url =~ /\.gz(?!\n)\Z/) { }
828 0 0 if ($res->is_success)
829 0 0 if (eval { do { "CPAN::Tarzip"->new("$aslocal.gz")->gunzip($aslocal) } })
850 0 0 !($url =~ /\.gz(?!\n)\Z/) ? :
853 0 0 if ($res and $res->{'success'}) { }
0 0 elsif ($res and $res->{'status'} ne '599') { }
0 0 elsif ($res and $res->{'status'} eq '599') { }
885 0 0 if $CPAN::Signal
886 0 0 if ($url =~ m[^ftp://(.*?)/(.*)/(.*)])
888 0 0 if $CPAN::DEBUG
890 0 0 if ($CPAN::META->has_usable('Net::FTP')) { }
893 0 0 if $CPAN::DEBUG
895 0 0 if ("CPAN::FTP"->ftp_get($host, $dir, $getfile, $aslocal))
899 0 0 unless ($aslocal =~ /\.gz(?!\n)\Z/)
902 0 0 if ("CPAN::FTP"->ftp_get($host, $dir, "$getfile.gz", $gz) and eval { do { "CPAN::Tarzip"->new($gz)->gunzip($aslocal) } })
914 0 0 if $CPAN::DEBUG
917 0 0 if (UNIVERSAL::can($ro_url, "text") and $ro_url->{'FROM'} eq "USER")
925 0 0 if $ret
927 0 0 if $CPAN::Signal
954 0 0 if ($url =~ m[^([^:]+)://(.*?)/(.*)/(.*)]) { }
960 0 0 if $proto eq "file"
966 0 0 if $CPAN::DEBUG
973 0 0 unless defined $funkyftp
974 0 0 if $funkyftp =~ /^\s*$/
979 0 0 if ($f eq 'lynx') { }
0 0 elsif ($f eq 'ncftp') { }
0 0 elsif ($f eq 'wget') { }
0 0 elsif ($f eq 'curl') { }
0 0 elsif ($f eq 'ncftpget') { }
982 0 0 unless $url =~ m[\Aftp://]
989 0 0 if ($proxy_vars->{'http_proxy'})
993 0 0 unless $url =~ m[\Aftp://]
1006 0 0 if $CPAN::DEBUG
1008 0 0 if ($f eq "lynx")
1010 0 0 if (-s $aslocal) { }
1012 0 0 unless open FH, $aslocal
1015 0 0 if ($content =~ /^<.*([45]|Error [45])/is) </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1031">1031</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if ($wstatus == 0) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1032">1032</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if (-s $aslocal) </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1040">1040</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> -f $aslocal ? : </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1048">1048</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if $CPAN::Signal </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1051">1051</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> unless $any_attempt </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1052">1052</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if ($some_dl_success) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1065">1065</a> </td> <td class="c3"> 2 </td> <td class="c0"> 0 </td> <td class="s"> if ($http_proxy) </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1070">1070</a> </td> <td class="c3"> 2 </td> <td class="c0"> 0 </td> <td class="s"> if ($host) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1072">1072</a> </td> <td class="c3"> 1 </td> <td class="c3"> 1 </td> <td class="s"> if ($host =~ /\Q$domain\E$/) </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1080">1080</a> </td> <td class="c3"> 1 </td> <td class="c3"> 1 </td> <td class="s"> if ($want_proxy) </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1097">1097</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> unless @$host_seq </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1102">1102</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> unless ($ftpbin and length $ftpbin and "MM"->maybe_command($ftpbin)) </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1123">1123</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if $CPAN::DEBUG </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1124">1124</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> unless ($url =~ m[^ftp://(.*?)/(.*)/(.*)]) </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1134">1134</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> $CPAN::DEBUG{'FTP'} & $CPAN::DEBUG ? : </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1147">1147</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if (not $netrcfile) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#"></a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> elsif ($netrc->hasdefault or $netrc->contains($host)) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1148">1148</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if $CPAN::DEBUG </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1150">1150</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if $CPAN::DEBUG </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1153">1153</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if ($netrc->protected) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1156">1156</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if ($netrc->contains($host)) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1176">1176</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if ($mtime > $timestamp) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1183">1183</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if $CPAN::Signal </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1214">1214</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if ($mtime > $timestamp) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1221">1221</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if $CPAN::Signal </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1231">1231</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> unless $fh->open("|$command") </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1236">1236</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if $wstatus </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1253">1253</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if ($blocks) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1260">1260</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if (-f _) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#"></a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> elsif (-d _) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#"></a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> elsif (-c _) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#"></a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> elsif (-b _) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#"></a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> elsif (-p _) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#"></a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> elsif (-S _) { } </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1276">1276</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if -u _ </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1277">1277</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if -g _ </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1278">1278</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if -k _ </td> </tr> <a name=""> </a> <tr> <td class="h"> <a href="blib-lib-CPAN-FTP-pm.html#1287">1287</a> </td> <td class="c0"> 0 </td> <td class="c0"> 0 </td> <td class="s"> if (-M _ > 182.625) { } </td> </tr> </table> </body> </html>