Branch Coverage

bin/fetchware
Criterion Covered Total %
branch 75 138 54.3


line true false branch
102 0 0 if ($parent_pid == $$)
154 10 1 @ARGV ? :
155 1 10 if ($command eq 'install') { }
1 9 elsif ($command eq 'uninstall') { }
0 9 elsif ($command eq 'new') { }
2 7 elsif ($command eq 'upgrade') { }
1 6 elsif ($command eq 'upgrade-all') { }
1 5 elsif ($command eq 'list') { }
1 4 elsif ($command eq 'look') { }
1 3 elsif ($command eq 'clean') { }
1 2 elsif ($command eq 'help') { }
183 0 0 if ($@)
217 81 2 if (defined $filename and -e $filename) { }
224 81 0 if ($filename =~ /\.fpkg$/) { }
348 33 0 if ($fetchware_package_path =~ /\.fpkg$/) { }
383 31 0 if (cp($fetchware_package_path, $temp_dir)) { }
486 0 0 if $fetchware_extension =~ m[\.\./|/|.pl|.pm]
491 0 0 if (grep {$fetchware_extension eq $_;} 'App::Fetchware', 'Fetchware', 'fetchware', 'default', 'Default') { }
572 36 0 if ($fetchware_package_path =~ /\.fpkg$/) { }
615 0 0 if ($P_upgrade) { }
657 6 30 if ($P_upgrade) { }
717 1 16 if @_
754 14 2 if (grep({$_ eq 'No upgrade needed.';} @upgraded_packages) eq @upgraded_packages) { }
780 2 0 if ($filename =~ /\.fpkg$/) { }
826 0 0 if (defined $filename and -e $filename) { }
883 0 32 if (@installed_packages == 0)
908 5 0 scalar @_ ? :
916 0 5 unless -d $fetchware_temp_dir
930 10 0 if (-d $fetchware_file_or_dir) { }
941 0 0 unless unlink $fetchware_file_or_dir
951 0 5 if @globbed_fetchware_temp_dirs < 1
969 10 0 if (open $fh_sem, '>', $sem_lock_file) { }
975 0 0 if ($> != (stat $sem_lock_file)[4]) { }
994 3 7 unless (flock $fh_sem, 6)
1014 0 7 if (@$err) { }
1018 0 0 if ($file eq '') { }
1032 7 0 if (@$res)
1040 0 5 if $num_remove_tree_errors > 0
1043 4 1 if $num_remove_tree_successes > 0
1107 0 150 unless ref $fetchwarefile eq 'SCALAR'
1114 0 150 unless $$fetchwarefile =~ /^\s*use\s+App::FetchwareX?(::)?/m
1128 0 150 if $@
1156 1650 22350 if $union{$element}++
1162 1650 0 if exists $api_subs{$_} and exists $intersection{$_}
0 150 if (grep({$api_subs{$_} eq $intersection{$_} if exists $api_subs{$_} and exists $intersection{$_};} keys %api_subs) != scalar keys %api_subs)
1167 0 0 if (not exists $intersection{$api_sub} && defined $intersection{$api_sub} or $intersection{$api_sub} == 0)
1201 0 89 unless chdir $new_dir
1244 0 89 unless my $tar_fetchwarefile = 'Archive::Tar::File'->new('data', './Fetchwarefile', $$fetchwarefile)
1254 0 89 unless $tar->add_files($tar_fetchwarefile)
1260 0 89 unless $tar->add_files(@file_list)
1265 0 89 unless $tar->write($fetchware_package_full_path, 9)
1272 0 89 unless chdir $previous_cwd
1287 2 371 if (defined config('fetchware_db_path')) { }
366 5 elsif (defined $ENV{'FETCHWARE_DATABASE_PATH'}) { }
5 0 elsif (is_os_type('Unix', $^O)) { }
0 0 elsif ($^O eq 'MSWin32') { }
1293 5 0 if ($> == 0) { }
1306 0 29 if ($^O eq 'MSWin32')
1312 0 0 if (Win32::IsAdminUser()) { }
1344 0 73 if @fetchware_package_filenames == 0
1354 1 72 if (@fetchware_package_filenames > 1)
1395 0 150 unless gunzip($fh, $output_fh)
1408 0 150 unless $tar->read($output_fh)
1414 0 150 unless my $fetchwarefile = $tar->get_content('./Fetchwarefile')
1434 0 88 unless (-e $fetchware_db_path)
1439 0 0 unless make_path($fetchware_db_path)
1445 0 88 unless cp($fetchware_package_path, $fetchware_db_path)
1463 0 37 unless file_name_is_absolute($uninstall_package_name)
1468 0 37 unless unlink $uninstall_package_name