Condition Coverage

lib/File/DataClass/IO.pm
Criterion Covered Total %
condition 134 167 80.8


and 3 conditions

line !l l&&!r l&&r condition
145 568 1 21 not $self->name and $handle
466 1 1 1 $self->is_open and not $self->is_reading
475 1 1 1 $self->is_open and not $self->is_reading
563 1 1 1 $self->$_push_layer(':raw') and $self->is_open
571 4 2 1 $self->$_push_layer($layer) and $self->is_open
633 1 1 2 defined $uid and defined $gid
664 2 1 1 &blessed($to) and $to->isa('File::DataClass::IO')
685 1 19 1 $self->_atomic and -f $path
737 0 3 0 $self->$_push_layer(":encoding($encoding)") and $self->is_open
745 0 147 0 $self->io_handle->can('error') and $self->io_handle->error
753 1 41 345 CORE::length $_[0]->name && -e $_[0]->name
798 1 17 0 defined $line and $self->_chomp
865 1 1 1 CORE::length $_[0]->name && -x $_[0]->name
877 1 454 8 CORE::length $_[0]->name && -l $_[0]->name
881 1 0 1 CORE::length $_[0]->name && -r $_[0]->name
889 1 0 4 CORE::length $_[0]->name && -w $_[0]->name
912 6 25 13 $deep and $path->is_dir
31 13 0 $deep and $path->is_dir and $follow || !$path->is_link
965 1 1 1 &blessed($to) and $to->isa('File::DataClass::IO')
993 257 6 406 $self->is_open and &first_char($mode) eq &first_char(scalar $self->mode)
996 257 2 4 $self->is_open and 'r' eq &first_char($mode)
259 4 0 $self->is_open and 'r' eq &first_char($mode) and '+' eq substr($self->mode, 1, 1) || ''
4 0 0 $self->is_open and 'r' eq &first_char($mode) and '+' eq substr($self->mode, 1, 1) || '' and $self->seek(0, 0)
1049 451 6 0 $self->is_link and $self->_no_follow
457 0 0 $self->is_link and $self->_no_follow and $self->close
1171 1 1 2 defined $search and CORE::length $search
1208 1 0 1 $tempdir = $self->name and -d $tempdir
1235 2 0 67 $handle and $handle->opened
1252 1 7 1 ref $r and not ${$r;}

or 2 conditions

line l !l condition
535 89 578 $_[1] // 'r'
691 1 1 $tmplt //= '%6.6d....'
827 1 1 $lines //= 10
929 1 69 $_[1] // 1
996 0 4 '+' eq substr($self->mode, 1, 1) || ''
1010 1 2 $count ||= 1
1169 3 1 $replace //= ''
1185 1 2 $lines //= 10
1188 13 0 $self->$_getline_backwards(@args) || (last)
1206 0 2 $tmplt ||= '%6.6dXXXX'

or 3 conditions

line l !l&&r !l&&!r condition
170 7 6 1 not defined $wanted[0] or $wanted[0] eq 'io'
482 1910 1 1 CORE::length $_[0]->name || $_[0]->io_handle
621 2 1 1 $perms //= $self->_perms
796 1 17 0 $separator // $self->_separator
814 2 4 0 $separator // $self->_separator
848 348 323 1 $self->type or $self->$_init_type_from_fs
871 28 12 1 $self->type or $self->$_init_type_from_fs
885 57 4 0 $_[1] // $_[0]->mode
893 0 139 1 $_[1] // $_[0]->mode
906 1 3 1 $args->{'recurse'} // $self->_deep
907 1 3 1 $args->{'follow_symlinks'} // !$self->_no_follow
912 10 2 1 $follow || !$path->is_link
933 0 2 0 $perms ||= $self->$_mkdir_perms
947 0 1 0 $perms ||= $self->$_mkdir_perms
991 668 1 0 $mode //= $self->mode
1038 0 0 38 @args || $self->is_dir
1043 35 0 3 $length || $self->autoclose && $self->close && 0
1059 456 248 333 not defined $name or $name =~ /$dir_pat/
1159 345 0 2 $exists or $self->is_open
1220 1 6 0 $time //= time