Condition Coverage

blib/lib/Path/Tiny.pm
Criterion Covered Total %
condition 152 212 71.7


and 3 conditions

line !l l&&!r l&&r condition
79 0 0 0 defined $dcwd and length $dcwd
138 16 0 0 $function =~ /^flock/ and $! =~ /operation not supported|function not implemented/i
16 0 0 $function =~ /^flock/ and $! =~ /operation not supported|function not implemented/i and not warnings::fatal_enabled("flock")
158 73 1356 6 defined $raw and ref $raw ne "HASH"
228 19 266 4 not @_ and ref $path eq "Path::Tiny"
285 0 4 not @_ and ref $path eq "Path::Tiny" and not $path->[5]
242 0 0 28 defined $homedir and not $File::Glob::ERROR
259 593 849 242 not @_ and ref $path eq "Path::Tiny"
1442 124 118 not @_ and ref $path eq "Path::Tiny" and not $path->[5]
460 0 7 201 @_ and $_[0] eq "Path::Tiny"
0 2 5 @_ and eval { do { $_[0]->isa("Path::Tiny") } }
468 194 12 2 @_ && ref $_[0] eq 'HASH'
616 3 18 26 @data && ref $data[0] eq 'HASH'
628 0 6 3 @data && ref $data[0] eq 'HASH'
636 0 6 3 @data && ref $data[0] eq 'HASH'
793 0 1 1 $filter and ref $filter eq "Regexp"
797 1 1 3 $_ ne "." and $_ ne ".."
888 2 2 2 @opts && ref $opts[0] eq 'HASH'
957 0 0 6 defined $cb and ref $cb eq "CODE"
971 0 0 3 defined $cb and ref $cb eq "CODE"
1015 0 0 9 defined $cb and ref $cb eq "CODE"
1112 1 0 554 @args && ref $args[0] eq 'HASH'
1126 0 105 450 $HAS_FLOCK and $args->{'locked'}
105 2 448 $HAS_FLOCK and $args->{'locked'} and not $ENV{'PERL_PATH_TINY_NO_FLOCK'}
1129 293 0 0 $^O eq "aix" and $opentype eq "<"
1267 127 21 16 $self->[3] eq '/' && $self->[4] eq ''
1330 71 2 0 -l $current->[0] and not $args->{'follow_symlinks'}
1342 90 126 59 $args->{'recurse'} and -d $path
6 51 2 !$args->{'follow_symlinks'} && -l $path
216 2 57 $args->{'recurse'} and -d $path and not !$args->{'follow_symlinks'} && -l $path
1414 12 69 3 @result == $mod and $counter % $mod
1442 15 0 0 $args->{'chomp'} and not $args->{'count'}
1456 22 5 6 defined $HAS_UU ? $HAS_UU : ($HAS_UU = _check_UU()) and $args->{'chomp'}
5 4 2 defined $HAS_UU ? $HAS_UU : ($HAS_UU = _check_UU()) and $args->{'chomp'} and not $args->{'count'}
1505 0 48 0 $err and @$err
1528 0 2 0 $err and @$err
1617 67 1 2 @args && ref $args[0] eq 'HASH'
1626 18 0 21 @args && ref $args[0] eq 'HASH'
1632 18 0 0 @args && ref $args[0] eq 'HASH'
1665 154 36 168 defined $level and $level > 0
1695 0 55 203 defined $string && length $string
1733 3 1 28 length $self->[4] && $self->[4] ne '.' && $self->[4] ne '..'
1741 0 0 32 defined $realpath and length $realpath
0 1 31 defined $realpath and length $realpath and -e $realpath
1791 2 1 69 defined $base && length $base
1798 0 72 0 not length $self->volume and length $base->volume
1799 72 0 0 length $self->volume and not length $base->volume
1830 1 0 193 @self_parts and @base_parts
1 39 154 @self_parts and @base_parts and _same($self_parts[0], $base_parts[0])
1935 0 20 0 $err and @$err
2067 72 0 41 (defined $binmode ? $binmode : "") eq ":unix" and my $size = -s $fh
2132 3 66 69 @data && ref $data[0] eq 'HASH'
2239 16 77 3 $self->is_absolute and not $other->is_absolute
14 77 2 $other->is_absolute and not $self->is_absolute
2248 96 0 0 length $self->volume and not length $other->volume
96 0 0 length $other->volume and not length $self->volume
2379 0 0 12 defined $cb and ref $cb eq "CODE"
2386 234 0 2 ref $r eq "SCALAR" and not $$r

or 2 conditions

line l !l condition
619 3 21 (caller 0)[10] || {}
1020 0 0 (caller 0)[10] || {}
1121 0 233 (caller 0)[10] || {}
1396 3 59 (caller 0)[10] || {}
1620 18 51 (caller 0)[10] || {}
2065 6 38 (caller 0)[10] || {}
2136 6 63 (caller 0)[10] || {}

or 3 conditions

line l !l&&r !l&&!r condition
1339 71 71 275 $next eq "." or $next eq ".."
1669 38 20 258 $self->[4] eq "." or $self->[4] eq ".."
1899 8 1 1 -e $self->[0] or -l $self->[0]
1901 8 1 0 unlink($self->[0]) || $self->_throw('unlink')
1927 19 1 2 -e $self->[0] or -l $self->[0]
2025 3 24 68 $mag == 0 || length int $size > 1
2186 8 1 0 File::stat::stat($self->[0]) || $self->_throw('stat')
2192 1 1 0 File::stat::lstat($self->[0]) || $self->_throw('lstat')