summaryrefslogtreecommitdiff
path: root/lib/File/stat-7896.t
blob: 57b26858520354634987c94be097fe92883f638d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!./perl -w
use strict;

use Test::More;
use File::stat;

# This is possibly a bit black-box, but for now it works.
# If (either) File::stat stops lazy loading Symbol, or Test::More starts, it
# should be revisited
is($INC{'Symbol.pm'}, undef, "Symbol isn't loaded yet");

# ID 20011110.104 (RT #7896)
$! = 0;
is($!, '', '$! is empty');
is(File::stat::stat('/notafile'), undef, 'invalid file should fail');
isnt($!, '', 'should populate $!, given invalid file');
my $e = $!;

isnt($INC{'Symbol.pm'}, undef, "Symbol has been loaded");

# Repeat twice
is(File::stat::stat('/notafile'), undef, 'invalid file should fail again');
is($!, $e, '$! should be consistent for an invalid file');
$e = $!;
is(File::stat::stat('/notafile'), undef, 'invalid file should fail again');
is($!, $e, '$! should be consistent for an invalid file');

done_testing();