Branch Coverage

blib/lib/File/Codeowners.pm
Criterion Covered Total %
branch 87 128 67.9


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 4 unless my $path = shift()
41 4 0 unless ref $self
49 0 8 unless my $fh = shift()
51 1 7 unless ref $self
62 2 43 if ($line eq '### UNOWNED (File::Codeowners)') { }
11 32 elsif ($line =~ /^\h*#(.*)/) { }
14 18 elsif ($line =~ /^\h*$/) { }
17 1 elsif ($line =~ /^\h*(.+?)(?
69 2 9 if ($comment =~ /^\h*Project:\h*(.+?)\h*$/i)
72 2 9 $project ? :
83 2 15 $current_project ? :
94 2 5 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 0 unless my $path = shift()
146 0 0 unless my $fh = shift()
171 2 2 if (my $comment = $line->{'comment'}) { }
2 0 elsif (my $pattern = $line->{'pattern'}) { }
184 1 0 if (@unowned)
185 1 0 if $format[-1]
192 0 1 if (defined $charset)
201 0 4 unless my $filepath = shift()
209 0 4 unless $line->{'owners'}
210 2 2 $line->{'project'} ? :
4 9 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 2 if $self->{'projects'}
265 4 24 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 1 0 @_ ? :
375 1 0 @_ ? :
381 0 4 unless $self->{'unowned'}