Branch Coverage

blib/lib/Data/Fallback.pm
Criterion Covered Total %
branch 66 146 45.2


line true false branch
19 1 0 ref $hash_ref eq 'HASH' ? :
35 0 0 if ($diff >= $$self{'periods_to_keep'}) { }
51 8 1 if ($$self{'ttl'} =~ /^\d+$/) { }
1 0 elsif ($$self{'ttl'} =~ s/^(\d+)\s*(\D+)$/$1/) { }
54 1 0 if defined $1
55 1 0 defined $2 ? :
56 1 0 if ($units =~ /^s/i or not $units) { }
0 0 elsif ($units =~ /^m/i) { }
0 0 elsif ($units =~ /^h/i) { }
0 0 elsif ($units =~ /^d/i) { }
0 0 elsif ($units =~ /^w/i) { }
77 0 9 unless ($$self{'base_hash'} and ref $$self{'base_hash'} and ref $$self{'base_hash'} eq 'HASH')
83 1 8 unless (exists $$self{'base_hash'}{$$self{'ttl'}})
90 8 1 if (exists $$self{'base_hash'}{$$self{'ttl'}}{$$self{'int_time'}}) { }
95 0 0 if ($self->expired_check($key))
116 1 0 ref $_[0] eq 'HASH' ? :
136 1 0 if ($$self{'use_zeroth_hash'}) { }
156 1 0 if ($$self{'zeroth_hash'}{'ttl'})
169 0 5 if ($chunk =~ m[^/(.+?)/(.+)$]) { }
174 0 5 unless defined $$self{'list_name'} and length $$self{'list_name'}
175 0 5 unless $$self{'list'}
176 0 5 unless ref $$self{'list'} and ref $$self{'list'} eq 'ARRAY'
177 0 5 unless ref $$self{'list'}[0] and ref $$self{'list'}[0] eq 'HASH'
178 0 5 unless defined $items and length $items
180 1 4 if ($$self{'use_zeroth_hash'} and not $$self{'list'}[0]{'zeroth_hash'})
203 0 12 if ($$self{'hash'}{'content'} and $$self{'hash'}{'content'} =~ /\$primary_key\b/)
212 0 5 unless $$self{'hash'}{'content'} or $$self{'hash'}{'zeroth_hash'}
215 0 12 unless $$self{'hash'}{'package'}
219 5 7 if ($self->_GET) { }
221 4 1 if $$self{'from_cache'}
229 0 5 if ($clean_hash_content)
236 0 7 if ($clean_hash_content)
242 0 5 unless ($$self{'got_item_from'})
256 0 5 if (scalar @{$return;} == 0) { }
5 0 elsif (scalar @{$return;} == 1) { }
261 0 0 wantarray ? :
269 7 0 if (defined $$self{'hash'}{'accept_update'} and length $$self{'hash'}{'accept_update'}) { }
0 0 elsif (defined $$self{'accept_update'} and length $$self{'accept_update'}) { }
283 0 7 unless $accept_update
286 0 7 if (not exists $$self{'hash'}{'primary_key'} and exists $$self{'set_primary_key'})
290 7 0 if (not ref $accept_update) { }
293 0 0 if (ref $accept_update eq 'ARRAY')
296 0 0 if (ref $this_update)
297 0 0 if (ref $this_update eq 'Regexp') { }
0 0 elsif (ref $this_update eq 'CODE') { }
298 0 0 if ($$self{'got_item_from'} and $$self{'got_item_from'} =~ /$this_update/)
299 0 0 if ($$accept_update[$i + 1])
311 0 7 if $delete_hash_primary_key
318 5 2 if ($update_type eq 'item') { }
2 0 elsif ($update_type eq 'group') { }
0 0 elsif ($update_type eq 'all') { }
332 5 0 if (exists $$self{'update'}{'item'})
340 2 0 if (defined $$self{'update'}{'item'} and length $$self{'update'}{'item'})
355 0 0 unless $list
356 0 0 unless ref $list and ref $list eq 'ARRAY'
377 0 19 if ($tmp_package =~ m[/]) { }
381 0 0 if ($@) { }
392 0 19 if ($@) { }
399 0 0 if ($@) { }
410 0 19 if $at
440 4 5 if (defined $$self{'hash'}{'cache_level'} and length $$self{'hash'}{'cache_level'}) { }
5 0 elsif (defined $$self{'cache_level'} and length $$self{'cache_level'}) { }
445 0 9 unless (grep {$return eq $_;} @{$$self{'cache_order'};})
456 11 32 unless $cache_level
458 0 13 unless $$self{'cache'} and $$self{'cache'}{$package} and $$self{'cache'}{$package}{$cache_level} and $$self{'cache'}{$package}{$cache_level}{$$self{'list_name'}} and $$self{'cache'}{$package}{$cache_level}{$$self{'list_name'}}{$type}
465 4 9 if ($self->cache_hashed) { }
471 5 8 if (defined $$ref{$type}{$key})
475 0 5 if $self->cache_hashed
485 0 9 unless (grep {$type eq $_;} @{$$self{'cache_type'};})
488 0 9 unless $key
489 0 9 unless defined $value and length $value
491 0 9 unless $cache_level
497 5 4 if ($self->cache_hashed) { }