Condition Coverage

blib/lib/JSprite.pm
Criterion Covered Total %
condition 78 320 24.3


and 3 conditions

line !l l&&!r l&&r condition
692 0 0 3 -d _ and -e _
0 0 3 -d _ and -e _ and -r _
736 0 0 0 $file && $lock_try
901 0 0 0 $self->{'sprite_forcereplace'} and -w $blobfile
0 0 0 $self->{'sprite_forcereplace'} and -w $blobfile and -e $tempfile
1178 0 1 0 $self->{'StrictCharComp'} == 0 and do { $$self{'types'} }->{$ONE} eq 'CHAR'
1261 1 0 0 $self->{'sprite_nocase'} and $isalike
1384 4 0 0 $self->{'sprite_reclimit'} and $loop >= $self->{'sprite_reclimit'}
1392 7 0 0 $types[$i] and $rawvalue =~ /^\d+$/o
1489 3 0 0 $matchcnt and $matchcnt > $#valuelist
1539 0 3 0 length $rawvalue > 0 and do { $$self{'types'} }->{$jj} =~ /$NUMERICTYPES/
1556 3 0 0 do { $$self{'types'} }->{$jj} eq 'FLOAT' and int $rawvalue != int $k
1563 3 0 0 do { $$self{'types'} }->{$jj} eq 'CHAR' and length $rawvalue > 0
1595 0 0 0 $self->{'CBC'} and $self->{'sprite_Crypt'} <= 2
1708 0 0 0 length $fieldval > 0 and do { $$self{'types'} }->{$j} =~ /$NUMERICTYPES/
1754 4 0 0 $self->{'sprite_actlimit'} > 0 and $#{$results;} >= $self->{'sprite_actlimit'}
1795 1 0 1 -e _ and -s _
1 0 1 -e _ and -s _ and -r _
1821 0 0 0 -e _ and -T _
0 0 0 -e _ and -T _ and -s _
0 0 0 -e _ and -T _ and -s _ and -r _
1836 0 0 0 $blobglob and $bloberror
1889 4 0 1 $column_stuff =~ /^table_name\s*$/io and $table =~ /^(user|all)_tables$/io
1968 57 0 1 not $parincnt and $found_parin
2501 0 0 0 length $value > 0 and $tp =~ /$NUMERICTYPES/
2518 0 0 0 $tp eq 'FLOAT' and int $value != int $rawvalue
2525 0 0 0 $tp eq 'CHAR' and length $rawvalue > 0
2565 1 0 0 $self->{'sprite_forcereplace'} and -e $new_file
2681 0 0 0 $self->{'lengths'}{$fd} < $oldln and not $tp =~ /$BLOBTYPES/
2698 0 0 0 defined $olddf and not defined $self->{'defaults'}{$fd}
2712 0 0 0 length $self->{'defaults'}{$fd} > 0 and do { $$self{'types'} }->{$fd} =~ /$NUMERICTYPES/
2731 0 0 0 do { $$self{'types'} }->{$fd} eq 'FLOAT' and int $self->{'defaults'}{$fd} != int $val
2738 0 0 0 do { $$self{'types'} }->{$fd} eq 'CHAR' and length $self->{'defaults'}{$fd} > 0
2902 3 0 0 $self->{'sprite_forcereplace'} and -e $seq_file
2989 9 0 0 defined $self->{'defaults'}{$column} and length $self->{'defaults'}{$column}
3027 0 6 3 length $v > 0 and do { $$self{'types'} }->{$column} =~ /$NUMERICTYPES/
3044 0 0 0 $self->{'CBC'} and $self->{'sprite_Crypt'} <= 2
3073 9 0 0 do { $$self{'types'} }->{$column} eq 'FLOAT' and int $v != int $hash->{$column}
6 0 3 do { $$self{'types'} }->{$column} eq 'CHAR' and length $v > 0
3105 0 0 0 $matchcnt and $matchcnt > $#keyfields
3130 3 0 0 $self->{'_write'} =~ /^xml/io and $self->{'CBC'}
0 0 0 $self->{'_write'} =~ /^xml/io and $self->{'CBC'} and $self->{'sprite_Crypt'} <= 2
3134 3 0 0 $self->{'CBC'} and $self->{'sprite_Crypt'} <= 2
3151 0 3 0 $status >= 1 and $self->{'sprite_forcereplace'}
3 0 0 $status >= 1 and $self->{'sprite_forcereplace'} and -e $new_file
3152 0 0 3 $status >= 1 and open FILE, ">$new_file"
3234 7 2 0 ${$$self{'scales'};}{do { $$self{'order'} }->[$i]} and ${$$self{'types'};}{do { $$self{'order'} }->[$i]} =~ /$NUMERICTYPES/
3249 3 0 0 $self->{'CBC'} and $self->{'sprite_Crypt'} <= 2
3272 12 0 6 do { $$self{'types'} }->{$column} eq 'CHAR' and length $record->{$column} > 0
3299 6 0 0 $self->{'CBC'} and $self->{'sprite_Crypt'} <= 2
3311 0 0 0 $self->{'CBC'} and $self->{'sprite_Crypt'} <= 2
3363 1 0 0 $self->{'_read'} =~ /^xml/io and $self->{'CBC'}
0 0 0 $self->{'_read'} =~ /^xml/io and $self->{'CBC'} and $self->{'sprite_Crypt'} <= 2
3368 1 0 0 $self->{'CBC'} and $self->{'sprite_Crypt'} != 2
3478 1 0 0 $self->{'CBC'} and $self->{'sprite_Crypt'} != 2
3530 0 0 0 $self->{'CBC'} and $self->{'sprite_Crypt'} != 2
3591 0 0 0 $self->{'CBC'} and $self->{'sprite_Crypt'} <= 2
3657 1 0 0 $self->{'sprite_forcereplace'} and -e $seq_file
3739 0 0 0 $_ and not /^$delim/
3740 0 0 0 /^['"]/ and not $snippet =~ /\\$/o

or 2 conditions

line l !l condition
630 9 0 $type ||= 'other'
841 1 0 $@ || $! || 'None'
1085 0 3 $m ||= ''
0 3 $i ||= ''
1359 0 7 ${$$self{'types'};}{$columns[$i]} =~ /$REFTYPES/o || 0
1368 0 1 do { $$self{'types'} }->{$i} =~ /$REFTYPES/o || 0
1980 4 0 $self->check_for_reload($table) || -501
2123 1 0 $self->check_for_reload($table) || -501
2235 0 0 $self->check_for_reload($table) || -501
2270 0 1 $self->check_for_reload($table) || -501
2305 1 0 $self->check_for_reload($table) || -501
2481 0 0 $self->{'LongReadLen'} || 0
2553 1 0 $self->check_for_reload($table) || -501
2615 0 0 $self->check_for_reload($table) || -501
2679 0 0 $self->{'LongReadLen'} || 0
2836 3 0 $self->check_for_reload($table) || -501
2839 0 3 $columns ||= ''
2908 3 0 $startval || 1
3203 0 0 $self->{'LongReadLen'} || '0'
0 0 $self->{'maxsizes'}{${$$self{'types'};}{do { $$self{'order'} }->[$i]}} || ${$$self{'lengths'};}{do { $$self{'order'} }->[$i]} || '0'
3504 0 0 $self->{'LongReadLen'} || 0
3663 1 0 $startval || 1

or 3 conditions

line l !l&&r !l&&!r condition
631 0 0 0 $self->{'_read'} || $self->{'_write'}
9 0 0 $delimiter ||= $self->{'_read'} || $self->{'_write'}
751 0 0 0 $self->{'sprite_lock_file'} ||= $self->{'default_lock'}
753 0 0 0 $self->{'sprite_lock_try'} ||= $self->{'default_try'}
992 0 4 0 $colmlist ||= join('|', @{$self->{'order'};})
1157 0 0 0 $one =~ /NUM\s*\(/ or do { $$self{'types'} }->{$ONE} =~ /$NUMERICTYPES/io
1178 0 1 1 $one =~ /NUM\s*\(/ or do { $$self{'types'} }->{$ONE} =~ /$NUMERICTYPES/iso
1373 0 0 5 $self->{'sprite_reclimit'} ||= $self->{'sprite_sizelimit'}
1380 1 6 6 not $condition or eval $condition
1550 0 3 0 $self->{'LongTruncOk'} or $rawvalue eq $k
3 0 0 $self->{'LongTruncOk'} or $rawvalue eq $k or do { $$self{'types'} }->{$jj} eq 'FLOAT'
1708 0 0 0 do { $$self{'types'} }->{$j} eq 'FLOAT' or do { $$self{'types'} }->{$j} eq 'DOUBLE'
1792 2 0 8 $self->{'file'} ne $file or $self->{'timestamp'} != $stats[9]
0 0 10 $self->{'table'} ne $table or ($self->{'file'} ne $file or $self->{'timestamp'} != $stats[9])
1893 0 0 1 not $full_path =~ /\S/o or $full_path =~ /$self->{'separator'}{$self->{'platform'}}$/
1952 3 3 1 $#column_stuff <= 0 or $column_stuff[0] eq ','
2365 0 0 0 not scalar @{$self->{'records'};} or $loop >= scalar @{$self->{'records'};}
2453 0 0 0 $4 || $3 || $2 || $1
2512 0 0 0 $self->{'LongTruncOk'} or $value eq $rawvalue
0 0 0 $self->{'LongTruncOk'} or $value eq $rawvalue or $tp eq 'FLOAT'
2629 0 0 0 $4 || $3 || $2 || $1
2691 0 0 0 $self->{'types'}{$fd} =~ /$REFTYPES/o or $tp =~ /$REFTYPES/o
2724 0 0 0 $self->{'LongTruncOk'} or do { $$self{'types'} }->{$fd} =~ /$BLOBTYPES/
0 0 0 $self->{'LongTruncOk'} or do { $$self{'types'} }->{$fd} =~ /$BLOBTYPES/ or $self->{'defaults'}{$fd} eq $val
0 0 0 $self->{'LongTruncOk'} or do { $$self{'types'} }->{$fd} =~ /$BLOBTYPES/ or $self->{'defaults'}{$fd} eq $val or do { $$self{'types'} }->{$fd} eq 'FLOAT'
2882 3 0 0 $values[$i] =~ /\s*(\w+).NEXTVAL\s*$/o or $values[$i] =~ /\s*(\w+).CURRVAL\s*$/o
3005 9 0 0 length $values[$loop] or not length $self->{'defaults'}{$column}
3067 0 9 0 $self->{'LongTruncOk'} or $v eq $hash->{$column}
9 0 0 $self->{'LongTruncOk'} or $v eq $hash->{$column} or do { $$self{'types'} }->{$column} eq 'FLOAT'
3166 0 0 0 $self->lock or $self->display_error(-515)
3472 0 0 0 $self->lock or $self->display_error(-515)
3721 0 0 0 not $_ or s/^$delim//