fix occasional op/time.t failure
[p5sagit/p5-mst-13.2.git] / t / op / filetest.t
index d0ca69a..231242b 100755 (executable)
@@ -10,7 +10,7 @@ BEGIN {
 }
 
 use Config;
-plan(tests => 22);
+plan(tests => 24);
 
 ok( -d 'op' );
 ok( -f 'TEST' );
@@ -19,8 +19,8 @@ ok( !-d '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)
@@ -35,7 +35,7 @@ SKIP: {
        skip('we cannot chmod symlinks');
     }
     elsif ($bad_chmod) {
-       skip( $@ );
+       skip( $bad_chmod );
     }
     else {
        ok( !-w 'TEST' );
@@ -78,3 +78,10 @@ ok( ! -f -d 'op' );
 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 _ );