| line |
true |
false |
branch |
|
200
|
49 |
0 |
unless &Internals::SvREADONLY(\$_[0]) |
|
212
|
0 |
0 |
unless ref \$handle eq "GLOB" |
|
279
|
0 |
32 |
unless defined $command and defined $_file_arg_post->{$command} |
|
282
|
2 |
18 |
if $command eq "open" and ref $at_under_ref and scalar @$at_under_ref == 2 |
|
294
|
0 |
119 |
unless scalar @stack |
|
295
|
0 |
119 |
unless defined $stack[0] |
|
297
|
66 |
53 |
if $stack[0] eq "Test::MockFile" |
|
298
|
20 |
33 |
if $stack[0] eq "Overload::FileCheck" |
|
300
|
1 |
32 |
if $authorized_strict_mode_packages{$stack[0]} |
|
366
|
0 |
11 |
unless defined $command_rule |
|
369
|
0 |
11 |
unless defined $action |
|
371
|
1 |
10 |
ref $command_rule eq 'ARRAY' ? : |
|
372
|
2 |
9 |
ref $file_rule eq 'ARRAY' ? : |
|
376
|
12 |
3 |
ref $c_rule eq 'Regexp' ? : |
|
|
9 |
6 |
ref $f_rule eq 'Regexp' || !defined($f_rule) ? : |
|
498
|
33 |
51 |
$STRICT_MODE_STATUS & 2 ? : |
|
504
|
51 |
33 |
unless is_strict_mode() |
|
507
|
0 |
33 |
if grep {$command eq $_;} "readdir", "telldir", "rewinddir", "seekdir", "closedir" |
|
510
|
1 |
32 |
unless scalar @stack |
|
517
|
32 |
0 |
if ($file_arg >= 0) |
|
518
|
0 |
32 |
scalar @$at_under_ref <= $file_arg ? : |
|
522
|
1 |
31 |
if defined $filename and $filename =~ /^\*?(?:main::)?[<*&+>]*STD(?:OUT|IN|ERR)$/ |
|
526
|
0 |
31 |
if UNIVERSAL::isa($filename, "GLOB") |
|
529
|
0 |
19 |
if $command eq "open" and $at_under_ref->[1] and $at_under_ref->[1] =~ /&/ |
|
540
|
15 |
16 |
if $pass |
|
542
|
0 |
16 |
if $file_arg == -1 |
|
556
|
14 |
8 |
if (defined $rule->{'file_rule'}) |
|
557
|
5 |
9 |
unless defined $context->{'filename'} and $context->{'filename'} =~ /$rule->{'file_rule'}/ |
|
561
|
1 |
16 |
unless $context->{'command'} =~ /$rule->{'command_rule'}/ |
|
564
|
4 |
12 |
ref $rule->{'action'} ? : |
|
566
|
15 |
1 |
if defined $answer |
|
580
|
18 |
13 |
grep({$_ eq 'nostrict';} @args) ? : |
|
582
|
0 |
31 |
if (defined $STRICT_MODE_STATUS and not $STRICT_MODE_STATUS & 4 and $STRICT_MODE_STATUS != $strict_mode) |
|
594
|
21 |
0 |
unless defined $opt and $opt eq "plugin" |
|
631
|
0 |
70 |
unless defined $file and length $file |
|
632
|
0 |
70 |
if _is_path_mocked($file) |
|
637
|
0 |
67 |
if (@stats > 1) |
|
644
|
0 |
67 |
if not defined $contents and @stats |
|
648
|
1 |
66 |
if (@stats) |
|
649
|
0 |
1 |
unless ref $stats[0] eq "HASH" |
|
655
|
1 |
66 |
defined $stats{'mode'} ? : |
|
662
|
7 |
40 |
if (defined $contents and $files_being_mocked{$dirname}) |
|
693
|
0 |
1 |
unless (open $fh, "<", $file_on_disk) |
|
727
|
0 |
12 |
unless defined $file and length $file |
|
728
|
0 |
12 |
unless not defined $readlink or length $readlink |
|
730
|
0 |
12 |
if _is_path_mocked($file) |
|
736
|
4 |
8 |
if ($files_being_mocked{$dirname}) |
|
755
|
5 |
222 |
if ($path =~ m[ ( ^ | / ) \.{2} ( / | $ ) ]msx) |
|
822
|
0 |
46 |
unless defined $dirname and length $dirname |
|
823
|
0 |
46 |
if _is_path_mocked($dirname) |
|
829
|
44 |
0 |
if $path ne "/" |
|
832
|
5 |
39 |
if @_ > 2 |
|
876
|
4 |
3 |
$opts ? : |
|
877
|
1 |
1 |
if (ref $opts eq "HASH" and $opts->{'mode'}) |
|
881
|
1 |
0 |
if (keys %{$opts;} == 0) |
|
887
|
1 |
3 |
if ($mode) { } |
|
940
|
118 |
0 |
if (scalar @_ == 1 and ref $_[0]) { } |
|
|
0 |
0 |
elsif (scalar @_ % 2) { } |
|
950
|
0 |
118 |
unless my $path = $opts{'path'} |
|
952
|
0 |
118 |
unless ($path =~ m[^/]) |
|
983
|
0 |
366 |
unless exists $self->{$key} |
|
1001
|
1 |
100 |
unless $type |
|
1003
|
6 |
1 |
$type eq 'lstat' ? : |
|
|
93 |
7 |
$type eq 'stat' ? : |
|
1009
|
0 |
99 |
if (scalar @_ != 2) |
|
1015
|
2 |
97 |
unless (defined $file_or_fh and length $file_or_fh) |
|
1023
|
1 |
96 |
if defined $file and defined bless( {}, 'A::BROKEN::SYMLINK' ) and $file eq bless( {}, 'A::BROKEN::SYMLINK' ) |
|
1024
|
1 |
95 |
if defined $file and defined bless( {}, 'A::CIRCULAR::SYMLINK' ) and $file eq bless( {}, 'A::CIRCULAR::SYMLINK' ) |
|
1026
|
0 |
95 |
unless (defined $file and length $file) |
|
1032
|
17 |
78 |
unless ($file_data) |
|
1033
|
16 |
1 |
unless ref $file_or_fh |
|
1038
|
24 |
53 |
unless $file_data->is_link or defined $file_data->contents |
|
1046
|
0 |
128 |
unless my $absolute_path_to_file = _find_file_or_fh($file_path) |
|
1048
|
0 |
128 |
$files_being_mocked{$absolute_path_to_file} ? : |
|
1054
|
0 |
312 |
unless my $file = _find_file_or_fh($file_path) |
|
1067
|
625 |
0 |
if $absolute_path_to_file ne "/" |
|
1074
|
2 |
623 |
if $depth and not $mock_object |
|
1077
|
589 |
34 |
unless $mock_object and $mock_object->is_link |
|
1084
|
7 |
27 |
unless $follow_link |
|
1090
|
2 |
25 |
if ($depth > 10) |
|
1103
|
2 |
631 |
unless defined $fh and length $fh |
|
1109
|
1104 |
57 |
unless $mock_fh |
|
1110
|
13 |
44 |
unless "$mock_fh" eq "$fh" |
|
1131
|
1 |
740 |
unless defined $path |
|
1136
|
21 |
770 |
if $path =~ s[//+][/]gmsx |
|
1137
|
8 |
783 |
if $path =~ s[/\.$][/] |
|
1138
|
11 |
780 |
if $path =~ s[(?:[^/]+)/\.\.(/|$)][$1] |
|
1139
|
35 |
756 |
if $path =~ s[/$][] |
|
1142
|
1 |
739 |
if $path eq "/.." |
|
1144
|
680 |
59 |
if $path =~ m[^/]msx |
|
1149
|
0 |
59 |
if ($path =~ m[ ^(~ ([^/]+)? ) ]msx) |
|
1158
|
0 |
0 |
if ($pwdata[0] eq $username) |
|
1166
|
0 |
0 |
unless $pw_homedir |
|
1175
|
0 |
59 |
if $path eq "." |
|
1181
|
0 |
118 |
unless ref $self |
|
1186
|
0 |
118 |
unless defined $path |
|
1191
|
118 |
0 |
if (defined $files_being_mocked{$path}) |
|
1192
|
0 |
118 |
unless $self == $files_being_mocked{$path} |
|
1214
|
0 |
270 |
unless $self |
|
1216
|
0 |
270 |
if $self->is_link |
|
1220
|
141 |
129 |
if ($self->is_dir) |
|
1221
|
0 |
141 |
if $new_contents |
|
1224
|
15 |
126 |
unless $self->{'has_content'} |
|
1238
|
66 |
6 |
defined $_->{'contents'} || $_->is_link || $_->is_dir ? : |
|
1247
|
129 |
0 |
if ($self->is_file) |
|
1248
|
12 |
117 |
if (defined $new_contents) |
|
1249
|
0 |
12 |
if ref $new_contents |
|
1282
|
0 |
214 |
unless $self |
|
1295
|
0 |
9 |
unless $self |
|
1297
|
1 |
8 |
unless ($self->exists) |
|
1302
|
2 |
6 |
if ($self->is_dir) |
|
1303
|
0 |
2 |
if ($] < 5.019 and $^O eq 'darwin' || $^O =~ /bsd/i) { } |
|
1312
|
1 |
5 |
if ($self->is_link) { } |
|
1336
|
0 |
6 |
unless $self |
|
1339
|
2 |
4 |
unless $self->is_file |
|
1343
|
2 |
2 |
unless (defined $pre_size) |
|
1398
|
0 |
27 |
unless $self->is_link |
|
1400
|
0 |
27 |
if (scalar @_ == 2) |
|
1401
|
0 |
0 |
if (defined $readlink and ref $readlink) |
|
1420
|
78 |
952 |
defined $self->{'readlink'} && length $self->{'readlink'} && $self->{'mode'} & 40960 ? : |
|
1432
|
204 |
142 |
($self->{'mode'} & 61440) == 16384 ? : |
|
1444
|
219 |
62 |
($self->{'mode'} & 61440) == 32768 ? : |
|
1457
|
2 |
111 |
if $self->is_link |
|
1460
|
0 |
111 |
if ($] < "5.012") |
|
1461
|
0 |
0 |
unless $self->exists |
|
1477
|
3 |
0 |
defined $self->{'readlink'} ? : |
|
|
3 |
138 |
if $self->is_link |
|
1480
|
70 |
15 |
defined $self->{'contents'} ? : |
|
|
85 |
53 |
if $self->is_file |
|
1483
|
23 |
29 |
$self->{'has_content'} ? : |
|
|
52 |
1 |
if $self->is_dir |
|
1498
|
0 |
54 |
if (int $blocks > $blocks) |
|
1548
|
5 |
0 |
if (scalar @_ == 2 and defined $time and $time =~ /^[0-9]+$/) |
|
1567
|
5 |
0 |
if (@_ == 2 and defined $time and $time =~ /^[0-9]+$/) |
|
1586
|
5 |
0 |
if (@_ == 2 and defined $time and $time =~ /^[0-9]+$/) |
|
1620
|
0 |
0 |
unless $code_ref and ref $code_ref eq "CODE" |
|
1717
|
2 |
55 |
if $] < "5.015" |
|
1718
|
3 |
52 |
if $] < "5.021" |
|
1719
|
2 |
50 |
if $] > "5.027" |
|
1736
|
25 |
25 |
m[^(.+)/[^/]+$]msx ? : |
|
1748
|
0 |
59 |
if (defined $_[0] and not ref $_[0]) |
|
1761
|
10 |
49 |
if ($arg_count == 2) |
|
1764
|
7 |
3 |
if ($_[1] =~ /^ ( >> | [+]?> | [+]?< ) (.+) $/msx) { } |
|
|
1 |
2 |
elsif ($_[1] =~ m[^[\./\\\w\d\-]+$]msx) { } |
|
|
1 |
1 |
elsif ($_[1] =~ /^\|/msx) { } |
|
|
1 |
0 |
elsif ($_[1] =~ /\|$/msx) { } |
|
1789
|
0 |
59 |
if ($arg_count != 3) |
|
1791
|
0 |
0 |
if _goto_is_available() |
|
1792
|
0 |
0 |
if (@_ == 1) { } |
|
|
0 |
0 |
elsif (@_ == 2) { } |
|
|
0 |
0 |
elsif (@_ >= 3) { } |
|
1804
|
0 |
59 |
if (ref $file and ref $file eq "SCALAR") |
|
1805
|
0 |
0 |
if _goto_is_available() |
|
1810
|
0 |
0 |
if not $abs_path and $mode ne "|-" and $mode ne "-|" |
|
1811
|
0 |
59 |
if $abs_path eq bless( {}, 'A::BROKEN::SYMLINK' ) |
|
1821
|
27 |
28 |
if ($mode eq "|-" or $mode eq "-|" or not grep({$_ eq $mode;} ">", "<", ">>", "+<", "+>", "+>>") or not defined $mock_file) |
|
1825
|
0 |
23 |
if _goto_is_available() |
|
1826
|
0 |
23 |
if (@_ == 1) { } |
|
|
3 |
20 |
elsif (@_ == 2) { } |
|
|
20 |
0 |
elsif (@_ >= 3) { } |
|
1840
|
3 |
25 |
if (not defined $mock_file->contents and grep {$mode eq $_;} "<", "+<") |
|
1846
|
18 |
7 |
if grep {$_ eq $mode;} "+<", "+>", "+>>", "<" |
|
1847
|
11 |
14 |
if grep {$_ eq $mode;} "+<", "+>", "+>>", ">", ">>" |
|
1852
|
0 |
25 |
if ($likely_bareword) { } |
|
1856
|
0 |
0 |
$_[1] ? : |
|
1865
|
25 |
0 |
if ref $_[0] |
|
1868
|
2 |
23 |
if ($mode eq '>>' or $mode eq '+>>') { } |
|
|
7 |
16 |
elsif ($mode eq '>' or $mode eq '+>') { } |
|
1895
|
4 |
3 |
unless ($mock_file) |
|
1897
|
0 |
3 |
if _goto_is_available() |
|
1904
|
0 |
3 |
if (($sysopen_mode & 132803) != $sysopen_mode) |
|
1909
|
0 |
3 |
if (($sysopen_mode & 131072) == 131072 and $mock_file->is_link) |
|
1915
|
0 |
1 |
if ($sysopen_mode & 128 and $sysopen_mode & 64 and defined $mock_file->{'contents'}) |
|
1921
|
1 |
2 |
if ($sysopen_mode & 64 and not defined $mock_file->{'contents'}) |
|
1926
|
1 |
2 |
if ($sysopen_mode & 512 and defined $mock_file->{'contents'}) |
|
1932
|
0 |
0 |
$rd_wr_mode == 2 ? : |
|
|
1 |
0 |
$rd_wr_mode == 1 ? : |
|
|
2 |
1 |
$rd_wr_mode == 0 ? : |
|
1939
|
0 |
3 |
if (not defined $mock_file->{'contents'} and $rd_wr_mode == 0) |
|
1951
|
3 |
0 |
if ref $_[0] |
|
1954
|
1 |
2 |
if ($sysopen_mode & 512) |
|
1959
|
0 |
3 |
if ($sysopen_mode & 1024) |
|
1969
|
1 |
23 |
if defined $_[0] and not ref $_[9] |
|
1974
|
0 |
24 |
if (scalar @_ != 2 or not defined $_[1]) |
|
1977
|
0 |
0 |
if _goto_is_available() |
|
1982
|
10 |
14 |
unless ($mock_dir) |
|
1984
|
0 |
7 |
if _goto_is_available() |
|
1988
|
0 |
14 |
unless (defined $mock_dir->contents) |
|
1993
|
1 |
13 |
unless ($mock_dir->{'mode'} & 16384) |
|
1998
|
12 |
1 |
if (not defined $_[0]) { } |
|
|
1 |
0 |
elsif (ref $_[0]) { } |
|
2018
|
28 |
0 |
if defined $_[0] and not ref $_[9] |
|
2022
|
6 |
22 |
unless ($mocked_dir) |
|
2024
|
0 |
6 |
if _goto_is_available() |
|
2029
|
0 |
22 |
unless ($obj) |
|
2033
|
0 |
22 |
unless (defined $obj->{'files_in_readdir'}) |
|
2037
|
0 |
22 |
unless (defined $obj->{'tell'}) |
|
2042
|
4 |
18 |
if $obj->{'tell'} > $#{$$obj{"files_in_readdir"};} |
|
2044
|
14 |
4 |
if (wantarray) |
|
2059
|
4 |
0 |
if defined $_[0] and not ref $_[9] |
|
2064
|
0 |
4 |
unless ($mocked_dir and $mocked_dir->{'obj'}) |
|
2066
|
0 |
0 |
if _goto_is_available() |
|
2072
|
0 |
4 |
unless (defined $obj->{'files_in_readdir'}) |
|
2076
|
0 |
4 |
unless (defined $obj->{'tell'}) |
|
2086
|
1 |
0 |
if defined $_[0] and not ref $_[9] |
|
2091
|
0 |
1 |
unless ($mocked_dir and $mocked_dir->{'obj'}) |
|
2093
|
0 |
0 |
if _goto_is_available() |
|
2099
|
0 |
1 |
unless (defined $obj->{'files_in_readdir'}) |
|
2103
|
0 |
1 |
unless (defined $obj->{'tell'}) |
|
2114
|
1 |
0 |
if defined $_[0] and not ref $_[9] |
|
2119
|
0 |
1 |
unless ($mocked_dir and $mocked_dir->{'obj'}) |
|
2121
|
0 |
0 |
if _goto_is_available() |
|
2127
|
0 |
1 |
unless (defined $obj->{'files_in_readdir'}) |
|
2131
|
0 |
1 |
unless (defined $obj->{'tell'}) |
|
2141
|
14 |
0 |
if defined $_[0] and not ref $_[9] |
|
2146
|
1 |
13 |
unless ($mocked_dir and $mocked_dir->{'obj'}) |
|
2148
|
0 |
1 |
if _goto_is_available() |
|
2165
|
7 |
4 |
if (not $mock) { } |
|
2181
|
2 |
5 |
unless (defined $file) |
|
2183
|
0 |
2 |
if ($^O eq 'freebsd') { } |
|
2193
|
1 |
4 |
unless ($mock_object) |
|
2195
|
0 |
1 |
if _goto_is_available() |
|
2199
|
2 |
2 |
unless ($mock_object->is_link) |
|
2212
|
1 |
27 |
unless (defined $file) |
|
2222
|
2 |
25 |
unless ($mock) |
|
2224
|
0 |
2 |
if _goto_is_available() |
|
2229
|
6 |
19 |
if ($mock->exists) |
|
2251
|
1 |
13 |
unless (defined $file) |
|
2258
|
4 |
9 |
unless ($mock) |
|
2260
|
0 |
4 |
if _goto_is_available() |
|
2266
|
8 |
1 |
if ($mock->exists) |
|
2267
|
1 |
7 |
if ($mock->is_file) |
|
2272
|
1 |
6 |
if ($mock->is_link) |
|
2278
|
1 |
6 |
unless ($mock->exists) |
|
2283
|
1 |
5 |
if (_files_in_dir($file)) |
|
2295
|
0 |
13 |
if $^O eq "MSWin32" |
|
2300
|
0 |
13 |
unless @files |
|
2304
|
13 |
1 |
ref $_ ? : |
|
2308
|
1 |
12 |
if (@mocked_files and @mocked_files != @files) |
|
2317
|
2 |
10 |
if $uid == -1 |
|
2318
|
2 |
10 |
if $gid == -1 |
|
2333
|
0 |
12 |
unless ($mock) |
|
2335
|
0 |
0 |
if _goto_is_available() |
|
2340
|
1 |
11 |
unless ($mock->exists) |
|
2343
|
1 |
0 |
unless $set_error |
|
2351
|
0 |
11 |
unless ($is_root) |
|
2352
|
0 |
0 |
if ($> != $uid or not $is_in_group) |
|
2353
|
0 |
0 |
unless $set_error |
|
2374
|
0 |
6 |
unless @files |
|
2380
|
1 |
5 |
unless $mode =~ /^[0-9]+/msx |
|
2387
|
8 |
1 |
ref $_ ? : |
|
2391
|
1 |
5 |
if (@mocked_files and @mocked_files != @files) |
|
2403
|
0 |
7 |
unless ($mock) |
|
2405
|
0 |
0 |
if _goto_is_available() |
|
2411
|
0 |
7 |
unless ($mock->exists) |
|
2430
|
0 |
34 |
!$^V || $^V lt 5.18.0 ? : |