Branch Coverage

blib/lib/PICA/PlainParser.pm
Criterion Covered Total %
branch 68 94 72.3


line true false branch
18 6 22 defined $params{'Field'} ? :
13 15 defined $params{'Record'} ? :
0 28 defined $params{'FieldError'} ? :
0 28 defined $params{'RecordError'} ? :
1 27 $params{'Proceed'} ? :
47 5 17 if (ref $file eq 'GLOB') { }
5 12 elsif (UNIVERSAL::isa($file, 'IO::Handle')) { }
57 0 12 if $fh =~ /\.gz$/
58 0 12 if $fh =~ /\.zip$/
60 0 12 unless $$self{'filehandle'} = 'IO::File'->new($file, '<:utf8')
66 22 0 unless ($$self{'proceed'})
76 3 19 if ($line =~ /\x1E/) { }
85 0 224 if $self->finished
86 221 3 if (@linebuf) { }
88 3 218 if (defined $line and not @linebuf)
94 221 3 if (defined $line)
96 208 13 if (PICA::Field::parse_pp_tag($1)) { }
99 6 7 if ("$id" ne "$1")
116 22 0 unless $self->finished
128 8 2 unless ($$self{'proceed'})
133 1 9 if (ref $data eq 'CODE') { }
1 8 elsif (UNIVERSAL::isa($data, 'PICA::Record')) { }
178 34 1 if (ref \$data eq 'SCALAR') { }
1 0 elsif (ref $data eq 'ARRAY') { }
179 0 34 $data eq "\n" ? :
197 27 4016 if ($line eq "\035" or not $$self{'strict'} and $line =~ /^\s*$|^#|^SET/) { }
198 4 23 if $$self{'active'} and @{$$self{'fields'};}
202 0 4016 if ($@) { }
3102 914 elsif ($$self{'field_handler'}) { }
208 914 3102 if (UNIVERSAL::isa($field, 'PICA::Field')) { }
0 3102 elsif (defined $field) { }
211 0 0 unless defined $$self{'broken'}
220 0 0 if ($$self{'broken_field_handler'})
223 0 0 if defined $line
232 0 6 if ($$self{'broken_record_handler'})
235 6 0 if UNIVERSAL::isa($record, 'PICA::Record') and $record->empty
236 0 0 if defined $msg
251 0 36 if ($$self{'broken'}) { }
262 36 0 unless (defined $broken)
263 17 19 if ($$self{'record_handler'})
264 0 17 if (UNIVERSAL::isa($$self{'record_handler'}, 'PICA::Writer')) { }
269 5 12 if $record =~ /^-?\d+$/
272 31 5 if (defined $record)
273 31 0 if (UNIVERSAL::isa($record, 'PICA::Record')) { }
274 6 25 if $record->empty
281 6 30 if (defined $broken) { }
25 5 elsif (defined $record) { }