Branch Coverage

blib/lib/File/LinkDir.pm
Criterion Covered Total %
branch 51 114 44.7


line true false branch
35 0 7 if $opts[0] eq 'skipinit'
46 1 19 if ($opt eq 'addignore') { }
52 0 5 if $@
65 0 7 if $@
72 0 5 if $@
75 0 7 unless defined $$self{'source'}
77 0 7 unless -d $$self{'source'}
78 7 0 if $$self{'source'} =~ /^(.*)$/
80 0 7 unless defined $$self{'dest'}
82 0 7 unless -d $$self{'dest'}
83 7 0 if $$self{'dest'} =~ /^(.*)$/
91 6 0 if $pwd =~ /^(.*)$/
93 0 6 unless chdir $$self{'source'}
96 2 4 $$self{'recursive'} ? :
99 0 6 unless chdir $pwd
112 0 40 if $file =~ /$$self{'ignore'}/
113 0 40 if grep {$file =~ /$_/;} @{$$self{'addignore'};}
114 4 36 unless -f $file or -l $file
116 0 36 if (-l $file and -l "$dest/$file")
119 0 0 if readlink $file eq readlink "$dest/$file"
122 0 36 if (not -l $file and -l "$dest/$file" and stat "$dest/$file")
125 0 0 if (stat "$dest/$file")[1] == (stat $file)[1]
128 0 36 if (-e "$dest/$file" or -l "$dest/$file") { }
130 0 0 if (not -l "$dest/$file" and -d "$dest/$file")
136 0 0 unless ($$self{'force'})
138 0 0 $$self{'dryrun'} ? :
145 0 0 if ($$self{'dryrun'}) { }
152 0 0 if $$self{'verbose'}
153 0 0 unless (unlink "$dest/$file")
162 0 36 if ($$self{'dryrun'})
167 0 36 if $$self{'verbose'}
170 2 34 unless (-d $path)
174 0 2 if ($@)
181 18 18 $$self{'hard'} ? :
0 36 -l $file ? :
187 0 36 unless $success
197 0 4 unless opendir my $dir_handle, $source
201 48 0 if $file =~ /^(.*)$/
203 8 40 if $file =~ /^\.{1,2}$/
204 4 36 if $file =~ /$$self{'ignore'}/
205 5 31 if grep {$file =~ /$_/;} @{$$self{'addignore'};}
207 0 31 if (-l "$dest/$file" and stat "$dest/$file")
209 0 0 if (stat "$dest/$file")[1] == (stat $file)[1]
212 0 31 if (-e "$dest/$file" or -l "$dest/$file")
214 0 0 unless ($$self{'force'})
216 0 0 $$self{'dryrun'} ? :
223 0 0 if ($$self{'dryrun'}) { }
230 0 0 if $$self{'verbose'}
232 0 0 if (-d "$dest/$file") { }
0 0 elsif (not unlink("$dest/$file")) { }
236 0 0 if ($@)
250 0 31 if ($$self{'dryrun'})
256 0 31 if $$self{'verbose'}
257 10 21 if ($$self{'hard'}) { }
259 1 9 if (-d "$source/$file") { }
265 0 9 unless link "$source/$file", "$dest/$file"
270 0 21 unless symlink "$source/$file", "$dest/$file"