Branch Coverage

blib/lib/File/Codeowners.pm
Criterion Covered Total %
branch 89 128 69.5


line true false branch
27 0 4 unless my $input = shift()
29 0 4 if @_
30 0 4 if ref $input eq 'ARRAY'
31 1 3 if ref $input eq 'SCALAR'
32 0 3 if &openhandle($input)
39 0 7 unless my $path = shift()
41 7 0 unless ref $self
49 0 11 unless my $fh = shift()
51 1 10 unless ref $self
62 2 55 if ($line eq '### UNOWNED (File::Codeowners)') { }
17 38 elsif ($line =~ /^\h*#(.*)/) { }
14 24 elsif ($line =~ /^\h*$/) { }
23 1 elsif ($line =~ /^\h*(.+?)(?
69 5 12 if ($comment =~ /^\h*Project:\h*(.+?)\h*$/i)
72 5 12 $project ? :
83 5 18 $current_project ? :
94 2 8 if ($parse_unowned)
97 2 0 if ($line =~ /# (.+)/)
113 0 1 unless my $arr = shift()
115 1 0 unless ref $self
117 0 1 if @_
125 0 3 unless my $str = shift()
127 2 1 unless ref $self
129 3 0 ref $str eq 'SCALAR' ? :
130 0 3 unless open my $fh, '<:encoding(UTF-8)', $ref
138 0 1 unless my $path = shift()
146 0 0 unless my $fh = shift()
171 9 3 if (my $comment = $line->{'comment'}) { }
2 1 elsif (my $pattern = $line->{'pattern'}) { }
184 2 0 if (@unowned)
185 2 0 if $format[-1]
192 0 2 if (defined $charset)
201 0 16 unless my $filepath = shift()
209 0 10 unless $line->{'owners'}
210 5 5 $line->{'project'} ? :
10 18 if &$matcher($filepath)
222 1 3 if not $pattern and $self->{'owners'}
226 5 9 if $pattern and $line->{'pattern'} and $pattern ne $line->{'pattern'}
227 25 14 unless $line->{'owners'}
231 3 1 unless $pattern
241 0 1 if not $owner and $self->{'patterns'}
245 8 6 unless $line->{'owners'}
12 16 if $owner and not grep({$_ eq $owner;} @{[] unless $line->{'owners'};})
247 8 8 if $pattern
251 1 1 unless $owner
260 0 4 if $self->{'projects'}
265 8 28 if $project
279 0 2 unless $pattern and $owners
281 0 2 if ref $owners ne 'ARRAY'
288 2 2 unless $line->{'pattern'}
289 1 1 if $pattern ne $line->{'pattern'}
302 0 1 unless $project and $owners
304 1 0 if ref $owners ne 'ARRAY'
311 13 1 unless $line->{'project'} and $line->{'owners'}
312 0 1 if $project ne $line->{'project'}
325 0 0 unless $old_owner and $new_owner
332 0 0 unless exists $line->{'owners'}
334 0 0 if $line->{'owners'}[$i] ne $old_owner
348 0 1 unless $old_project and $new_project
355 12 2 if not exists $line->{'project'} or $old_project ne $line->{'project'}
357 1 1 if exists $line->{'comment'}
368 9 0 @_ ? :
375 1 0 @_ ? :
381 0 4 unless $self->{'unowned'}