Branch Coverage

blib/lib/KiokuDB.pm
Criterion Covered Total %
branch 62 106 58.4


line true false branch
39 0 52 if (-d $dsn or $dsn =~ /\.yml$/) { }
51 0 0 unless &blessed($base)
89 0 61 if ($b->can('default_typemap'))
94 61 0 if ($b->can('serializer') and $b->serializer->can('default_typemap'))
106 4 57 if (my $typemap = $self->typemap)
110 15 46 if (my $classes = $self->allow_classes)
118 15 46 if (my $classes = $self->allow_bases)
126 15 46 if (my $opts = $self->allow_class_builders)
128 0 15 ref $opts ? :
133 0 61 if (not @typemaps) { }
42 19 elsif (@typemaps == 1) { }
241 0 61 if $backend->can('register_handle')
249 0 446 unless @ids
251 165 314 $_ ? :
252 413 33 @ids == 1 ? :
256 0 0 if (@ids == 1) { }
259 0 0 if (my $entry = $self->live_objects->id_to_entry($ids[0]))
263 0 0 if (my $entry = ($self->backend->exists($id))[0]) { }
264 0 0 if (ref $entry)
280 0 0 if (ref(my $entry = $entries{$id})) { }
287 0 0 if (@missing)
290 0 0 if (my(@entries) = grep({ref $_;} @values))
294 0 0 ref $_ ? :
297 0 0 @ids == 1 ? :
304 0 1538 unless @ids
311 1349 116 if (@ids == 1) { }
317 69 0 if &blessed($_) and $_->isa('KiokuDB::Error::MissingObjects') and $_->missing_ids_are(@ids)
328 66 3 if (@args == 1 and ref $args[0] eq 'HASH') { }
408 436 2064 if (not ref $next) { }
427 238 1283 if (scalar keys %$ids)
437 0 33 unless @objects
442 0 33 if grep {not $l->object_in_storage($_);} @objects
446 0 33 if (defined wantarray)
447 0 0 if (@objects == 1) { }
460 0 776 unless @objects
473 0 217 unless @objects
478 4 213 if (my(@in_storage) = grep({$l->object_in_storage($_);} @objects))
485 206 7 if (defined wantarray)
501 0 528 if grep {not $l->object_in_storage($_);} @objects
514 0 0 if grep {not $l->object_in_storage($_);} @objects
532 99 0 ref $derive_args eq 'HASH' ? :
559 466 132 @objects == 1 ? :
569 972 528 if $args{'root_set'}
573 1110 390 if (@$objects == 1) { }
583 0 170 unless @ids_or_objects
591 81 89 unless ($l->keep_entries)
599 0 38 unless $l->object_in_storage($_)
602 37 133 if @objects
610 133 37 if (my(@new_entries) = grep({ref $_;} $self->backend->delete(@ids_or_entries)))
626 2023 160 if @args % 2 == 1
636 2183 0 if ($backend->can('txn_do')) { }
640 140 128 if $scope
0 268 if $rollback