This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
[perl #97476] Deparse not() following the llafr
[perl5.git] / lib / DirHandle.t
old mode 100755 (executable)
new mode 100644 (file)
index e83ea13..f3a9304
@@ -11,24 +11,37 @@ BEGIN {
 }
 
 use DirHandle;
+use Test::More tests => 5;
 
-print "1..5\n";
+# Fetching the list of files in two different ways and expecting them 
+# to be the same is a race condition when tests are running in parallel.
+# So go somewhere quieter.
+my $chdir;
+if ($ENV{PERL_CORE} && -d 'uni') {
+  chdir 'uni';
+  push @INC, '../../lib';
+  $chdir++;
+};
 
-$dot = new DirHandle ($^O eq 'MacOS' ? ':' : '.');
+$dot = DirHandle->new('.');
 
-print defined($dot) ? "ok" : "not ok", " 1\n";
+is(defined $dot, 1);
 
 @a = sort <*>;
 do { $first = $dot->read } while defined($first) && $first =~ /^\./;
-print +(grep { $_ eq $first } @a) ? "ok" : "not ok", " 2\n";
+ok(+(grep { $_ eq $first } @a));
 
 @b = sort($first, (grep {/^[^.]/} $dot->read));
-print +(join("\0", @a) eq join("\0", @b)) ? "ok" : "not ok", " 3\n";
+ok(+(join("\0", @a) eq join("\0", @b)));
 
 $dot->rewind;
 @c = sort grep {/^[^.]/} $dot->read;
-print +(join("\0", @b) eq join("\0", @c)) ? "ok" : "not ok", " 4\n";
+cmp_ok(join("\0", @b), 'eq', join("\0", @c));
 
 $dot->close;
 $dot->rewind;
-print defined($dot->read) ? "not ok" : "ok", " 5\n";
+is(defined $dot->read, '');
+
+if ($chdir) {
+  chdir "..";
+}