Branch Coverage

blib/lib/Directory/Queue/Normal.pm
Criterion Covered Total %
branch 104 182 57.1


line true false branch
85 0 28 unless defined $value
86 0 28 if ref $value
106 56 0 if ($line =~ /^([^\x09\x0a]*)\x09([^\x09\x0a]*)$/o) { }
133 0 2 unless (@stat)
134 0 0 unless $! == 2
157 0 40 unless (@stat)
158 0 0 unless $! == 2
190 0 95 unless $element =~ m[^(?:$Directory::Queue::Normal::_DirectoryRegexp)/(?:$Directory::Queue::Normal::_ElementRegexp)$]o
216 1 13 if (defined $option{'maxelts'})
218 0 1 unless $option{'maxelts'} =~ /^\d+$/ and $option{'maxelts'} > 0
222 8 6 if (defined $option{'schema'})
224 0 8 unless ref $option{'schema'} eq 'HASH'
226 0 9 unless $name =~ /^($_FileRegexp)$/ and $name ne 'locked'
229 9 0 if ($option{'schema'}{$name} =~ /^(binary|string|table)([\?\*]{0,2})$/) { }
236 8 1 unless $options =~ /\?/
237 1 8 if $options =~ /\*/
239 0 1 if $self->{'type'}{$name} eq 'table' and $self->{'ref'}{$name}
242 0 8 unless $self->{'mandatory'}
252 10 18 unless -d $path
269 13 20 if $name =~ /^($Directory::Queue::Normal::_DirectoryRegexp)$/o
274 9 4 if $subdirs
291 5 53 unless -d $path . '/' . 'locked'
292 51 2 unless defined $time
294 0 2 unless (@stat)
295 0 0 unless $! == 2
323 37 0 unless defined $permissive
325 0 37 if (defined $self->{'umask'}) { }
332 3 34 unless ($success)
333 3 0 if ($permissive)
335 3 0 if $! == 17
337 0 0 if $! == 2
343 0 34 unless (lstat $path)
344 0 0 if ($permissive and $! == 2)
377 0 6 unless (rmdir $path)
378 0 0 if ($permissive)
380 0 0 if $! == 2
408 1 12 unless &_is_locked($self, $element)
416 12 0 if rename $path, $temp
417 0 0 unless $! == 39 or $! == 17
423 12 15 if $name eq 'locked'
424 15 0 if ($name =~ /^($_FileRegexp)$/o) { }
429 15 0 if unlink $path
435 0 12 unless rmdir $path
436 12 0 if rmdir $temp
437 0 0 unless $! == 39 or $! == 17
470 36 0 unless $@
483 0 39 unless $self->{'type'}
485 1 38 unless &_is_locked($self, $element)
489 0 40 unless (lstat $path)
490 0 0 unless $! == 2
491 0 0 if ($self->{'mandatory'}{$name}) { }
497 8 32 if ($self->{'type'}{$name} =~ /^(binary|string)$/) { }
32 0 elsif ($self->{'type'}{$name} eq 'table') { }
498 4 4 if ($self->{'type'}{$name} eq 'string') { }
503 1 7 $self->{'ref'}{$name} ? :
510 21 17 unless wantarray
527 30 56 if $name =~ /^($Directory::Queue::Normal::_DirectoryRegexp)$/o
530 3 25 unless (@list)
539 25 0 if (defined $subdirs) { }
540 24 1 if $subdirs < $self->{'maxelts'}
562 0 32 unless $self->{'type'}{$name}
563 16 16 if ($self->{'type'}{$name} =~ /^(binary|string)$/) { }
16 0 elsif ($self->{'type'}{$name} eq 'table') { }
564 2 14 if ($self->{'ref'}{$name}) { }
567 1 1 unless ref $data->{$name} eq 'SCALAR'
572 0 14 if ref $data->{$name}
579 0 16 unless ref $data->{$name} eq 'HASH'
586 23 8 if ($utf8)
590 0 23 if ($@)
615 0 29 unless $self->{'type'}
616 10 19 if (@data == 1) { }
623 0 29 unless defined $data->{$name}
629 29 0 if &_special_mkdir($tempdir, $self->{'umask'})
636 28 0 if rename $tempdir, $path
637 0 0 unless $! == 39 or $! == 17
653 2 0 if $name =~ /^($Directory::Queue::Normal::_ElementRegexp)$/o
658 0 0 if $name =~ /^($Directory::Queue::Normal::_ElementRegexp)$/o
673 0 0 if $name eq 'locked'
675 0 0 if unlink $path
676 0 0 unless $! == 2
696 2 0 unless defined $option{'maxtemp'}
697 1 1 unless defined $option{'maxlock'}
699 0 4 unless $name =~ /^(maxtemp|maxlock)$/
702 0 4 unless $option{$name} =~ /^\d+$/
707 4 4 if $name =~ /^($Directory::Queue::Normal::_DirectoryRegexp)$/o
710 2 0 if (@list > 1)
716 1 1 if $subdirs or not defined $subdirs
721 2 0 if ($option{'maxtemp'})
725 2 0 unless &_older($path, $oldtime)
731 2 0 if ($option{'maxlock'})
735 2 1 unless &_is_locked($self, $locked, $oldtime)