Branch Coverage

inc/File/Temp.pm
Criterion Covered Total %
branch 48 348 13.7


line true false branch
199 0 2 unless scalar @_ >= 1
219 0 2 if (ref $template)
226 0 2 if (scalar(@_) % 2 != 0)
233 2 0 if @_
239 0 0 if ($options{'open'} and $options{'mkdir'})
254 0 2 if (substr($template, $start - 4 + 1, 4) ne 'XXXX')
275 2 0 if ($options{'mkdir'}) { }
285 0 2 if ($#dirs == 0) { }
289 0 2 if ($^O eq 'VMS') { }
291 0 0 if $parent eq ''
312 0 0 unless $directories ne ''
322 0 2 unless (-e $parent)
326 0 2 unless (-d $parent)
335 0 2 if ('File::Temp'->safe_level == 1) { }
0 2 elsif ('File::Temp'->safe_level == 2) { }
337 0 0 unless (_is_safe($parent, \$safeerr))
343 0 0 unless (_is_verysafe($parent, \$safeerr))
353 0 2 if ($options{'open'}) { }
2 0 elsif ($options{'mkdir'}) { }
357 0 0 if ($] < 5.006)
368 0 0 if ($^O eq 'VMS' and ($options{'unlink_on_close'} and not $File::Temp::KEEP_ALL)) { }
373 0 0 $options{'unlink_on_close'} && !$File::Temp::KEEP_ALL ? :
376 0 0 if defined $LOCKFLAG and $options{'use_exlock'}
379 0 0 if ($open_success) { }
391 0 0 unless ($!{'EEXIST'})
402 2 0 if (mkdir $path, 448) { }
411 0 0 unless ($!{'EEXIST'})
425 0 0 unless -e $path
456 0 0 if ($counter > $MAX_GUESS)
482 0 2 unless scalar @_ == 2
491 2 0 $] >= 5.006 ? :
493 0 2 if ($ignore) { }
535 0 0 unless (scalar @info)
540 0 0 if $^O eq 'VMS'
545 0 0 if ($info[4] > 'File::Temp'->top_system_uid and $info[4] != $>)
550 0 0 if ref $err_ref
560 0 0 if ($info[2] & &Fcntl::S_IWGRP or $info[2] & &Fcntl::S_IWOTH)
563 0 0 unless (-d $path)
564 0 0 if ref $err_ref
569 0 0 unless (-k $path)
570 0 0 if ref $err_ref
595 0 0 if $File::Temp::DEBUG
596 0 0 if $^O eq 'VMS'
605 0 0 if eval { do { &POSIX::_PC_CHOWN_RESTRICTED(); 1 } }
608 0 0 if (defined $chown_restricted)
611 0 0 if POSIX::sysconf($chown_restricted)
621 0 0 unless ('File::Spec'->file_name_is_absolute($path))
643 0 0 if $File::Temp::DEBUG
646 0 0 unless _is_safe($dir, $err_ref)
664 0 0 if (grep {$^O eq $_;} 'MSWin32', 'os2', 'VMS', 'dos', 'MacOS', 'haiku') { }
685 0 0 if $level == 0
688 0 0 if ($^O eq 'MSWin32' or $^O eq 'os2' or $^O eq 'cygwin' or $^O eq 'dos' or $^O eq 'MacOS' or $^O eq 'mpeix') { }
740 0 2 unless defined $at_exit
741 0 2 if @k
743 2 0 if (not $File::Temp::KEEP_ALL)
746 0 2 exists $files_to_unlink{$$} ? :
754 0 0 if (-f $file->[1])
756 0 0 unless unlink $file->[1]
761 2 0 exists $dirs_to_unlink{$$} ? :
764 2 0 if (-d $dir)
770 2 0 if ($at_exit)
771 2 0 unless defined $cwd
773 0 2 if ($abs eq $cwd)
779 0 0 if $@ and $^W
783 0 2 if (defined $cwd_to_remove)
786 0 0 unless chdir $cwd_to_remove
788 0 0 unless chdir $updir
790 0 0 if $@ and $^W
795 0 2 if exists $files_to_unlink{$$}
797 2 0 if exists $dirs_to_unlink{$$}
808 0 2 unless scalar @_ == 3
813 0 2 if $File::Temp::DEBUG
823 2 0 if ($isdir) { }
825 2 0 if (-d $fname) { }
829 0 2 if $^O eq 'VMS'
831 2 0 unless exists $dirs_to_unlink{$$}
835 0 0 if $^W
840 0 0 if (-f $fname) { }
844 0 0 unless exists $files_to_unlink{$$}
848 0 0 if $^W
860 0 2 scalar(@_) % 2 == 1 ? :
868 0 2 $leading_template ? :
0 2 exists $args{'TEMPLATE'} ? :
882 0 0 exists $args->{'UNLINK'} ? :
891 0 0 if $File::Temp::DEBUG
917 0 0 exists $args->{'CLEANUP'} ? :
953 0 0 if (@_)
968 0 0 if (exists $FILES_CREATED_BY_OBJECT{$$}{$file})
973 0 0 if (do { *$self }->{'UNLINK'} and not $File::Temp::KEEP_ALL)
974 0 0 if $File::Temp::DEBUG
977 0 0 unless $was_created_by_proc
986 0 0 unless unlink1($self, $file)
992 0 0 if (@_ and $_[0] eq 'File::Temp')
1010 0 0 @$maybe_template ? :
1016 0 0 unless ($options{'OPEN'})
1018 0 0 if $^W
1023 0 0 if ($options{'DIR'} and $^O eq 'VMS')
1037 0 0 if (defined $template) { }
1039 0 0 if ($options{'DIR'}) { }
0 0 elsif ($options{'TMPDIR'}) { }
1051 0 0 if ($options{'DIR'}) { }
1076 0 0 wantarray ? :
1088 0 0 unless ($fh, $path) = _gettemp($template, 'open', $options{'OPEN'}, 'mkdir', 0, 'unlink_on_close', $unlink_on_close, 'suffixlen', length $options{'SUFFIX'}, 'ErrStr', \$errstr, 'use_exlock', $options{'EXLOCK'})
1096 0 0 if $options{'UNLINK'}
1099 0 0 if (wantarray) { }
1101 0 0 if ($options{'OPEN'}) { }
1111 0 0 unless unlink0($fh, $path)
1122 0 2 if (@_ and $_[0] eq 'File::Temp')
1138 0 2 @$maybe_template ? :
1146 0 2 if (defined $template) { }
1149 0 0 if ($options{'TMPDIR'} or $options{'DIR'})
1154 0 0 if $^O eq 'VMS'
1161 0 0 if ($options{'DIR'}) { }
0 0 elsif ($options{'TMPDIR'}) { }
1176 0 2 if ($options{'DIR'}) { }
1191 0 2 if ($^O eq 'VMS')
1195 0 2 if ($^O eq 'MacOS' and substr($template, -1) eq ':')
1201 0 2 unless (undef, $tempdir) = _gettemp($template, 'open', 0, 'mkdir', 1, 'suffixlen', $suffixlen, 'ErrStr', \$errstr)
1210 2 0 if ($options{'CLEANUP'} and -d $tempdir)
1221 0 0 if scalar @_ != 1
1227 0 0 unless ($fh, $path) = _gettemp($template, 'open', 1, 'mkdir', 0, 'suffixlen', 0, 'ErrStr', \$errstr)
1235 0 0 if (wantarray) { }
1245 0 0 if scalar @_ != 2
1254 0 0 unless ($fh, $path) = _gettemp($template, 'open', 1, 'mkdir', 0, 'suffixlen', length $suffix, 'ErrStr', \$errstr)
1262 0 0 if (wantarray) { }
1274 0 0 if scalar @_ != 1
1279 0 0 if ($^O eq 'VMS')
1283 0 0 if ($^O eq 'MacOS' and substr($template, -1) eq ':')
1288 0 0 unless ($junk, $tmpdir) = _gettemp($template, 'open', 0, 'mkdir', 1, 'suffixlen', $suffixlen, 'ErrStr', \$errstr)
1302 0 0 if scalar @_ != 1
1308 0 0 unless ($junk, $tmpname) = _gettemp($template, 'open', 0, 'mkdir', 0, 'suffixlen', 0, 'ErrStr', \$errstr)
1324 0 0 if $tmpdir eq ''
1330 0 0 if (wantarray) { }
1345 0 0 unless unlink0($fh, $file)
1354 0 0 unless scalar @_ == 2
1370 0 0 unless scalar @_ == 2
1376 0 0 unless cmpstat($fh, $path)
1379 0 0 if (_can_unlink_opened_file())
1382 0 0 if $File::Temp::KEEP_ALL
1386 0 0 if -d $path
1387 0 0 unless unlink $path
1392 0 0 if $File::Temp::DEBUG
1400 0 0 if $fh[3] == 0 or $^O eq 'cygwin'
1409 0 0 unless scalar @_ == 2
1415 0 0 if $File::Temp::DEBUG
1426 0 0 unless @fh
1428 0 0 if ($fh[3] > 1 and $^W)
1429 0 0 if $^W
1435 0 0 unless (@path)
1436 0 0 if $^W
1441 0 0 unless (-f $path)
1451 0 0 if ($^O eq 'MSWin32') { }
0 0 elsif ($^O eq 'os2') { }
0 0 elsif ($^O eq 'VMS') { }
0 0 elsif ($^O eq 'dos') { }
0 0 elsif ($^O eq 'mpeix') { }
1465 0 0 if $File::Temp::DEBUG
1469 0 0 unless ($fh[$_] eq $path[$_])
1470 0 0 if $File::Temp::DEBUG
1479 0 0 unless scalar @_ == 2
1485 0 0 unless cmpstat($fh, $path)
1488 0 0 unless close $fh
1494 0 0 if $File::Temp::KEEP_ALL
1505 0 4 if (@_)
1507 0 0 if ($level != 0 and $level != 1 and $level != 2) { }
1508 0 0 if $^W
1511 0 0 if ($] < 5.006 and $level != 0)
1517 0 0 if _can_do_level($level)
1529 0 0 if (@_)
1531 0 0 unless $newuid =~ /^\d+$/s
1567 0 0 if (@_)
1576 0 0 if ($self->unlink_on_destroy and $$ == $self->{'LAUNCHPID'} and not $File::Temp::KEEP_ALL)
1578 0 0 if (-d $self->{'REALNAME'})
1584 0 0 if $@ and $^W