Branch Coverage

blib/lib/CPAN/Tarzip.pm
Criterion Covered Total %
branch 35 178 19.6


line true false branch
16 0 4 unless defined $file
18 1 3 if ($file =~ /\.(bz2|gz|zip|tbz|tgz)$/i) { }
23 0 4 if (do { $file =~ /\.(?:bz2|tbz)$/i }) { }
25 0 0 unless ($$me{'UNGZIPPRG'} = $$CPAN::Config{'bzip2'})
27 0 0 if ($bzip2) { }
46 0 8 if ($$CPAN::Config{$what})
49 8 0 if ($CPAN::META->has_inst('File::Which'))
53 0 0 if @cand
57 0 0 unless defined $component and $component
59 0 0 if ('MM'->maybe_command($abs))
69 0 0 if ($CPAN::META->has_inst('Compress::Zlib')) { }
71 0 0 unless $fhw = 'FileHandle'->new($read)
74 0 0 unless my $gz = Compress::Zlib::gzopen($write, 'wb')
92 0 0 if ($CPAN::META->has_inst('Compress::Zlib')) { }
94 0 0 unless $fhw = 'FileHandle'->new(">$write")
96 0 0 unless my $gz = Compress::Zlib::gzopen($read, 'rb')
101 0 0 if $gz->gzerror != Compress::Zlib::Z_STREAM_END()
115 0 4 if exists $$self{'GTEST'}
116 0 4 unless defined $$self{'FILE'}
119 0 4 if ($read =~ /\.(?:bz2|tbz)$/ and $CPAN::META->has_inst('Compress::Bzip2')) { }
1 3 elsif ($read =~ /\.(?:gz|tgz)$/ and $CPAN::META->has_inst('Compress::Zlib')) { }
3 0 elsif (not $$self{'ISCOMPRESSED'}) { }
122 0 0 unless my $gz = Compress::Bzip2::bzopen($read, 'rb')
132 0 0 if ($len == -s $read)
134 0 0 if $CPAN::DEBUG
137 0 0 if $CPAN::DEBUG
143 0 1 unless my $gz = Compress::Zlib::gzopen($read, 'rb')
153 0 1 if ($len == -s $read)
155 0 0 if $CPAN::DEBUG
158 0 1 if $CPAN::DEBUG
174 3 0 if (do { not $self->gtest }) { }
0 0 elsif ($file =~ /\.(?:bz2|tbz)$/ and $CPAN::META->has_inst('Compress::Bzip2')) { }
0 0 elsif ($file =~ /\.(?:gz|tgz)$/ and $CPAN::META->has_inst('Compress::Zlib')) { }
176 0 3 unless my $fh = 'FileHandle'->new($file)
182 0 0 unless my $gz = Compress::Bzip2::bzopen($file, 'rb')
187 0 0 unless my $gz = Compress::Zlib::gzopen($file, 'rb')
194 0 0 unless my $fh = 'FileHandle'->new($pipe)
205 0 3 if (exists $$self{'GZ'}) { }
209 0 0 if $bytesread <= 0
220 0 4 if defined $offset
221 0 4 if (exists $$self{'GZ'}) { }
234 0 4 if (exists $$self{'GZ'}) { }
236 0 0 if defined $gz
240 3 1 if defined $fh
251 0 1 if $exttar =~ /^\s+$/
253 0 1 if $extgzip =~ /^\s+$/
255 0 1 if (do { $CPAN::Tarzip::BUGHUNTING }) { }
0 1 elsif ($$CPAN::Config{'prefer_external_tar'}) { }
1 0 elsif ($CPAN::META->has_usable('Archive::Tar') and $CPAN::META->has_inst('Compress::Zlib')) { }
0 0 elsif ($exttar and $extgzip) { }
265 1 0 unless (defined $prefer_external_tar)
266 0 1 if ($^O =~ /(MSWin32|solaris)/) { }
272 1 0 $prefer_external_tar ? :
277 0 0 if ($^O eq 'solaris' and not `$exttar --version 2>/dev/null` =~ /gnu/i)
288 0 0 $exttar ? :
289 0 0 $foundtar ? :
0 0 $extgzip ? :
291 0 0 if ($CPAN::META->has_usable('Archive::Tar')) { }
297 0 0 if ($CPAN::META->has_inst('Compress::Zlib')) { }
0 0 elsif ($foundAT) { }
317 0 1 if (defined $$CPAN::Config{'tar_verbosity'})
318 0 0 $$CPAN::Config{'tar_verbosity'} eq 'none' ? :
321 1 0 if ($prefer == 1) { }
0 0 elsif ($prefer == 2) { }
325 1 0 if ($is_compressed) { }
332 0 1 if (system($system) != 0) { }
335 0 0 if ($is_compressed)
339 0 0 if ($ct->gunzip($ungzf)) { }
349 0 0 if ($ret == 0) { }
352 0 0 if ($? == -1) { }
0 0 elsif ($? & 127) { }
356 0 0 $? & 128 ? :
368 0 0 unless ($CPAN::META->has_usable('Archive::Tar'))
380 0 0 if ($CPAN::Tarzip::BUGHUNTING) { }
388 0 0 if ($af =~ m[^(/|\.\./)])
394 0 0 if $CPAN::Signal
398 0 0 if ($af =~ m[^(/|\.\./)])
402 0 0 if ($tar_verb eq 'v' or $tar_verb eq 'vv')
406 0 0 if $CPAN::Signal
408 0 0 unless $tar->extract(@af)
412 0 0 if $^O eq 'MacOS'
422 0 0 if ($CPAN::META->has_inst('Archive::Zip')) { }
0 0 elsif (my $unzip = $$CPAN::Config{'unzip'}) { }
427 0 0 if $status != Archive::Zip::AZ_OK()
429 0 0 if $CPAN::DEBUG
433 0 0 if ($af =~ m[^(/|\.\./)])
438 0 0 if $CPAN::DEBUG
439 0 0 if $status != Archive::Zip::AZ_OK()
441 0 0 if $CPAN::Signal