Re: [PATCH] chom?p needs to remove read only fakery
[p5sagit/p5-mst-13.2.git] / t / op / stat.t
index e2f9c32..b99734b 100755 (executable)
@@ -11,6 +11,8 @@ use File::Spec;
 
 plan tests => 69;
 
+my $Perl = which_perl;
+
 $Is_Amiga   = $^O eq 'amigaos';
 $Is_Cygwin  = $^O eq 'cygwin';
 $Is_Dos     = $^O eq 'dos';
@@ -40,7 +42,11 @@ close FOO;
 open(FOO, ">$tmpfile") || BAILOUT("Can't open temp test file: $!");
 
 my($nlink, $mtime, $ctime) = (stat(FOO))[$NLINK, $MTIME, $CTIME];
-is($nlink, 1, 'nlink on regular file');
+SKIP: {
+    skip "No link count", 1 if $Is_VMS;
+
+    is($nlink, 1, 'nlink on regular file');
+}
 
 SKIP: {
   skip "mtime and ctime not reliable", 2 
@@ -200,12 +206,18 @@ SKIP: {
 
     skip "opendir failed: $!", 3 if @DEV == 0;
 
+    # /dev/stdout might be either character special or a named pipe,
+    # depending on which OS and how are you running the test, so let's
+    # censor that one away.
+    $DEV =~ s{^[cp].+?\bstdout$}{}m;
+    @DEV = grep { ! m{\bstdout$} } @DEV;
+
     my $try = sub {
        my @c1 = eval qq[\$DEV =~ /^$_[0]/mg];
        my @c2 = eval qq[grep { $_[1] "/dev/\$_" } \@DEV];
        my $c1 = scalar @c1;
        my $c2 = scalar @c2;
-       is($c1, $c2, "ls and $_[1] agree on /dev ($c1 $c2)");
+       is($c1, $c2, "ls and $_[1] agreeing on /dev ($c1 $c2)");
     };
 
     $try->('b', '-b');
@@ -290,8 +302,8 @@ SKIP: {
 ok(-T 'op/stat.t',      '-T');
 ok(! -B 'op/stat.t',    '!-B');
 
-ok(-B $^X,      '-B');
-ok(! -T $^X,    '!-T');
+ok(-B $Perl,      '-B');
+ok(! -T $Perl,    '!-T');
 
 open(FOO,'op/stat.t');
 SKIP: {