lib/b test fixes from Peter Prymmer.
Jarkko Hietaniemi [Sat, 15 Jul 2000 00:10:41 +0000 (00:10 +0000)]
p4raw-id: //depot/perl@6411

t/lib/b.t

index aceef28..96ba126 100755 (executable)
--- a/t/lib/b.t
+++ b/t/lib/b.t
@@ -31,7 +31,15 @@ print "not " if "{\n    \$test /= 2 if ++\$test;\n}" ne
                     $deparse->coderef2text(sub {++$test and $test/=2;});
 ok;
 
-my $a = `$^X -I../lib -MO=Deparse -anle 1 2>&1`;
+my $a;
+my $Is_VMS = $^O eq 'VMS';
+if ($Is_VMS) { 
+    $^X = "MCR $^X";
+    $a = `$^X "-I../lib" "-MO=Deparse" -anle "1"`;
+}
+else {
+    $a = `$^X -I../lib -MO=Deparse -anle 1 2>&1`;
+}
 $a =~ s/-e syntax OK\n//g;
 $b = <<'EOF';
 
@@ -49,18 +57,33 @@ print "# [$a]\n\# vs\n# [$b]\nnot " if $a ne $b;
 ok;
 
 #6
-$a = `$^X -I../lib -MO=Debug -e 1 2>&1`;
+if ($Is_VMS) { 
+    $a = `$^X "-I../lib" "-MO=Debug" -e "1"`;
+}
+else {
+    $a = `$^X -I../lib -MO=Debug -e 1 2>&1`;
+}
 print "not " unless $a =~
 /\bLISTOP\b.*\bOP\b.*\bCOP\b.*\bOP\b/s;
 ok;
 
 #7
-$a = `$^X -I../lib -MO=Terse -e 1 2>&1`;
+if ($Is_VMS) { 
+    $a = `$^X "-I../lib" "-MO=Terse" -e "1"`;
+}
+else {
+    $a = `$^X -I../lib -MO=Terse -e 1 2>&1`;
+}
 print "not " unless $a =~
 /\bLISTOP\b.*leave.*\bOP\b.*enter.*\bCOP\b.*nextstate.*\bOP\b.*null/s;
 ok;
 
-$a = `$^X -I../lib -MO=Terse -ane "s/foo/bar/" 2>&1`;
+if ($Is_VMS) { 
+    $a = `$^X "-I../lib" "-MO=Terse" -ane "s/foo/bar/"`;
+}
+else {
+    $a = `$^X -I../lib -MO=Terse -ane "s/foo/bar/" 2>&1`;
+}
 $a =~ s/\(0x[^)]+\)//g;
 $a =~ s/\[[^\]]+\]//g;
 $a =~ s/-e syntax OK//;
@@ -80,7 +103,12 @@ $b =~ s/\s+$//;
 print "# [$a] vs [$b]\nnot " if $a ne $b;
 ok;
 
-chomp($a = `$^X -I../lib -MB::Stash -Mwarnings -e1`);
+if ($Is_VMS) {
+    chomp($a = `$^X "-I../lib" "-MB::Stash" "-Mwarnings" -e "1"`);
+}
+else {
+    chomp($a = `$^X -I../lib -MB::Stash -Mwarnings -e1`);
+}
 $a = join ',', sort split /,/, $a;
 $a =~ s/-uWin32,// if $^O eq 'MSWin32';
 $a =~ s/-u(Cwd|File|File::Copy|OS2),//g if $^O eq 'os2';
@@ -93,6 +121,11 @@ if ($Config{static_ext} eq ' ') {
   print "ok $test # skipped: one or more static extensions\n"; $test++;
 }
 
-$a = `$^X -I../lib -MO=Showlex -e "my %one" 2>&1`;
+if ($Is_VMS) {
+    $a = `$^X "-I../lib" "-MO=Showlex" -e "my %one"`;
+}
+else {
+    $a = `$^X -I../lib -MO=Showlex -e "my %one" 2>&1`;
+}
 print "# [$a]\nnot " unless $a =~ /sv_undef.*PVNV.*%one.*sv_undef.*HV/s;
 ok;