}
use Config;
-plan(tests => 22);
+plan(tests => 24);
ok( -d 'op' );
ok( -f 'TEST' );
ok( -r 'TEST' );
# make sure TEST is r-x
-eval { chmod 0555, 'TEST' };
-$bad_chmod = $@;
+eval { chmod 0555, 'TEST' or die "chmod 0555, 'TEST' failed: $!" };
+chomp ($bad_chmod = $@);
$oldeuid = $>; # root can read and write anything
eval '$> = 1'; # so switch uid (may not be implemented)
skip('we cannot chmod symlinks');
}
elsif ($bad_chmod) {
- skip( $@ );
+ skip( $bad_chmod );
}
else {
ok( !-w 'TEST' );
ok( -x -d -x 'op' );
ok( (-s -f 'TEST' > 1), "-s returns real size" );
ok( -f -s 'TEST' == 1 );
+
+# test that _ is a bareword after filetest operators
+
+-f 'TEST';
+ok( -f _ );
+sub _ { "this is not a file name" }
+ok( -f _ );