diff --git a/lib/Test/MockFile.pm b/lib/Test/MockFile.pm index f2a3f57..84ccb85 100644 --- a/lib/Test/MockFile.pm +++ b/lib/Test/MockFile.pm @@ -3290,6 +3290,7 @@ sub __rmdir (_) { # Core sometimes warns: 'Use of uninitialized value $_ in rmdir' if ( !defined $file ) { carp('Use of uninitialized value in rmdir'); + $! = ENOENT; return 0; } diff --git a/t/rmdir.t b/t/rmdir.t index 0191e20..30eec9f 100644 --- a/t/rmdir.t +++ b/t/rmdir.t @@ -48,8 +48,10 @@ subtest "undef rmdir" => sub { is( $returns, 0, " - returns 0" ); local $_; + $! = 0; like( warning { $returns = rmdir(undef) }, qr/^Use of uninitialized value in rmdir at.+\n$/, "REAL mkdir when undef is passed as the directory." ); - is( $returns, 0, " - returns 0" ); + is( $returns, 0, " - returns 0" ); + is( $! + 0, ENOENT, " - \$! is ENOENT" ); }; subtest "rmdir existing file" => sub {