Branch Coverage

blib/lib/DBD/CSV.pm
Criterion Covered Total %
branch 78 110 70.9


line true false branch
76 259 0 if ($attr and ref $attr eq "HASH")
80 0 3 if exists $attr->{$f_key}
85 0 3 if exists $attr->{$c_key}
91 259 0 if $dbh
119 259 0 if (my(@ka) = eval {
120 7770 518 if /^[a-su-z]/
148 0 1 if $table
149 1 0 unless ($meta)
155 1 0 if $dvsn
163 0 209 if ref $v eq "CODE"
204 23 6282 unless (%compat_map)
209 23 6282 if ($class and not $class_mapped{$class}++ and my(@ka) = eval {
215 23 6282 if ($x)
235 5978 14 unless exists $meta->{'csv_skip_first_row'}
237 0 5978 exists $dbh->{'bom'} ? :
5978 14 unless exists $meta->{'csv_bom'}
249 275 18 unless ($csv_in)
254 275 6018 if $attr eq "eol"
255 421 5597 if exists $$dbh{"csv_$attr"}
259 0 6 'Text::CSV_XS'->version < 1.18 ? :
6 269 if $dbh->{'csv_null'} or $meta->{'csv_null'}
263 0 275 unless $eol =~ /^\A(?:[\r\n]|\r\n)\Z/
271 11 814 exists $$dbh{"csv_$attr"} ? :
0 825 exists $meta->{$attr} ? :
273 0 273 unless $meta->{'csv_in'} = $class->new(\%opts)
276 0 273 unless $meta->{'csv_out'} = $class->new(\%opts)
287 3 17 if (exists $csv_xs_attr{$csv_attr})
290 6 0 if exists $meta->{$_} and exists $meta->{$_}{$csv_attr}
301 427 0 if ($meta and $meta->{'fh'})
304 2 425 if (my $types = $meta->{'types'})
310 5 1 $_ ? :
317 397 30 if (not $flags->{'createMode'})
323 3 247 exists $meta->{'col_names'} ? :
0 250 defined $meta->{'csv_skip_first_row'} ? :
147 250 defined $meta->{'skip_rows'} ? :
325 250 147 unless defined $meta->{'skip_rows'}
326 0 397 if ($meta->{'csv_bom'})
328 0 0 unless my(@hdr) = $attrs->{'csv_csv_in'}->header($meta->{'fh'})
330 0 0 if $skipRows
332 391 6 if ($skipRows--)
334 0 391 unless $array = $attrs->{'csv_csv_in'}->getline($meta->{'fh'})
335 391 0 unless ($meta->{'raw_header'})
339 249 142 unless defined $meta->{'col_names'}
347 135 262 if $flags->{'lockMode'}
349 397 0 if exists $meta->{'col_names'}
350 1 396 if (not $meta->{'col_names'} && @{$meta->{'col_names'};})
370 0 4 unless defined $diag[$_]
381 1 1176 if exists $tbl->{'cached_row'}
384 0 1176 unless my $csv = $self->{'csv_csv_in'}
387 285 891 unless ($fields)
388 283 2 if $csv->eof
391 0 2 if $diag[0] == 2012
397 0 891 if @$fields < @{$tbl->{'col_names'};}
398 891 0 @$fields ? :
407 0 189 unless ($csv->print($fh, $fields))