use Config;
use File::Spec;
-plan tests => 73;
+plan tests => 78;
my $Perl = which_perl();
$Is_Solaris = $^O eq 'solaris';
$Is_VMS = $^O eq 'VMS';
$Is_DGUX = $^O eq 'dgux';
+$Is_MPRAS = $^O =~ /svr4/ && -f '/etc/.relid';
$Is_Dosish = $Is_Dos || $Is_OS2 || $Is_MSWin32 || $Is_NetWare || $Is_Cygwin;
my $tmpfile_link = $tmpfile.'2';
-unlink $tmpfile;
+1 while unlink $tmpfile;
open(FOO, ">$tmpfile") || DIE("Can't open temp test file: $!");
close FOO;
if $Is_MSWin32 || $Is_NetWare || $Is_Dos;
skip "/dev isn't available to test against", 6
unless -d '/dev' && -r '/dev' && -x '/dev';
+ skip "Skipping; unexpected ls output in MP-RAS", 6
+ if $Is_MPRAS;
my $LS = $Config{d_readlink} ? "ls -lL" : "ls -l";
my $CMD = "$LS /dev 2>/dev/null";
$DEV =~ s{^.+?\s\..+?$}{}m;
@DEV = grep { ! m{^\..+$} } @DEV;
+ # Irix ls -l marks sockets with 'S' while 's' is a 'XENIX semaphore'.
+ if ($^O eq 'irix') {
+ $DEV =~ s{^S(.+?)}{s$1}mg;
+ }
+
my $try = sub {
my @c1 = eval qq[\$DEV =~ /^$_[0].*/mg];
my @c2 = eval qq[grep { $_[1] "/dev/\$_" } \@DEV];
'-l _ croaks after -T _' );
unlink $linkname or print "# unlink $linkname failed: $!\n";
}
+
+print "# Zzz...\n";
+sleep(3);
+my $f = 'tstamp.tmp';
+unlink $f;
+ok (open(S, "> $f"), 'can create tmp file');
+close S or die;
+my @a = stat $f;
+print "# time=$^T, stat=(@a)\n";
+my @b = (-M _, -A _, -C _);
+print "# -MAC=(@b)\n";
+ok( (-M _) < 0, 'negative -M works');
+ok( (-A _) < 0, 'negative -A works');
+ok( (-C _) < 0, 'negative -C works');
+ok(unlink($f), 'unlink tmp file');
+
+END {
+ 1 while unlink $tmpfile;
+}