Branch Coverage

blib/lib/Data/Model/Driver/Memory.pm
Criterion Covered Total %
branch 135 164 82.3


line true false branch
15 64 88 if ($type eq 'data') { }
77 44 336 unless $result_id_list and @{$result_id_list;}
80 4 332 unless $results and @{$results;}
99 6 50 unless $results
108 40 212 unless $results
118 150 96 if (@{$schema->key;} and grep {defined $_;} @{$key;})
120 2 148 if @{$result_id_list;}
122 26 218 if (scalar %{$schema->unique;})
129 2 24 if @{$result_id_list;}
139 84 158 if ($self->_set_auto_increment($schema, $columns, sub { $self->generate_auto_increment($schema); } ))
163 0 18 unless $result_id_list and @{$result_id_list;}
164 0 18 if @{$result_id_list;} != 1
181 6 52 unless $result_id_list and @{$result_id_list;}
184 0 52 unless $results and @{$results;}
191 56 0 if @ret
193 52 0 @rows ? :
233 475 157 if ($key) { }
238 75 82 if (exists $$columns{'index'} and ref $$columns{'index'} eq 'HASH') { }
240 26 49 unless ref $index_key eq 'ARRAY'
242 75 31 if (exists $schema->$index_type->{$index})
259 475 75 $index_type eq 'key' ? :
265 524 26 scalar @{$key;} == scalar @{$columns;} ? :
267 38 290 ref $result eq 'HASH' ? :
328 222 $result ? :
286 280 80 $index_type eq 'key' ? :
296 346 116 scalar @prefix == scalar @{$key;} ? :
298 78 384 if (exists $$hash{$key_data}) { }
299 54 24 unless (ref $$hash{$key_data} eq 'HASH')
328 74 16 $index_type eq 'key' ? :
338 78 4 scalar @prefix == scalar @{$key;} ? :
340 8 74 if (ref $$hash{$key_data} eq 'HASH') { }
342 8 0 if (keys %{$$hash{$key_data};} == 1)
364 255 133 unless $query and ref $query eq 'HASH'
371 0 6 unless @{$l;} and @{$r;}
372 2 4 if ($$l[0][0] > $$r[0][0])
385 10 12 if ($rid == $lid) { }
4 8 elsif ($rid < $lid) { }
399 0 6 if @{$l;} and not @{$r;}
400 0 6 if not @{$l;} and @{$r;}
401 2 4 if ($$l[0][0] > $$r[0][0])
414 4 10 if ($rid == $lid) { }
2 8 elsif ($rid < $lid) { }
434 0 384 unless (exists $$row[1]{$col})
438 220 164 if (ref $val) { }
439 220 0 if (ref $val eq 'HASH')
442 82 138 if ($op eq 'LIKE') { }
0 138 elsif ($op eq '=') { }
32 106 elsif ($op eq '!=') { }
30 76 elsif ($op eq '>') { }
20 56 elsif ($op eq '<') { }
0 56 elsif ($op eq '>=') { }
0 56 elsif ($op eq '<=') { }
56 0 elsif ($op eq 'IN' || $op eq 'NOT IN' and ref $value eq 'ARRAY') { }
446 20 62 if $is_prefix
447 32 50 if $is_suffix
448 39 43 if $rval =~ /$meta_str/
451 0 0 if $rval eq $value
454 24 8 unless $rval eq $value
457 12 18 if $rval > $value
460 12 8 if $rval < $value
463 0 0 if $rval >= $value
466 0 0 if $rval <= $value
470 26 86 if $rval eq $v
472 10 46 unless $op eq 'IN'
476 77 87 if $rval eq $val
478 184 200 if $ok
484 76 78 if (lc $col eq '-and' or lc $col eq '-or') { }
489 12 76 if ($results) { }
490 6 6 lc $col eq '-and' ? :
495 0 76 unless $results
499 0 78 unless $col =~ /^[\w\.]+$/ or ref $col eq 'SCALAR'
500 0 78 unless not ref $val or ref $val eq 'HASH'
506 67 66 unless exists $$query{'where'}
508 0 66 unless $ret
514 55 78 unless exists $$query{'order'}
530 0 264 if ($$data{'int'}) { }
531 0 0 if $$a[1]{$column} == $$b[1]{$column}
534 98 166 if $$a[1]{$column} eq $$b[1]{$column}
537 34 132 if $$data{'vec'} eq 'DESC'
547 129 4 unless exists $$query{'limit'} or exists $$query{'offset'}
550 2 2 if (exists $$query{'offset'})
555 4 0 if (exists $$query{'limit'}) { }