summaryrefslogtreecommitdiff
path: root/lib/warnings.t
diff options
context:
space:
mode:
authorCraig A. Berry <craigberry@mac.com>2005-01-06 11:32:01 -0600
committerNicholas Clark <nick@ccl4.org>2005-01-07 11:23:48 +0000
commit92ca9816760477489e51e09e0dcde1dda70f387d (patch)
tree5c182144fae049171b865ba5d4e780dbf3e0b7ea /lib/warnings.t
parent66a514d8d1d4a3b3b04859f859b41a1405cdc3c7 (diff)
downloadperl-92ca9816760477489e51e09e0dcde1dda70f387d.tar.gz
make lib/warnings.t use t/test.pl
From: "Craig A. Berry" <craigberry@mac.com> Message-ID: <41DDCA71.1080704@mac.com> Date: Thu, 06 Jan 2005 17:32:01 -0600 p4raw-id: //depot/perl@23765
Diffstat (limited to 'lib/warnings.t')
-rw-r--r--lib/warnings.t36
1 files changed, 12 insertions, 24 deletions
diff --git a/lib/warnings.t b/lib/warnings.t
index 77571734b8..9c3ce698a9 100644
--- a/lib/warnings.t
+++ b/lib/warnings.t
@@ -5,6 +5,7 @@ BEGIN {
@INC = '../lib';
$ENV{PERL5LIB} = '../lib';
require Config; import Config;
+ require './test.pl';
}
use File::Path;
@@ -12,12 +13,8 @@ use File::Spec::Functions;
$| = 1;
-my $Is_VMS = $^O eq 'VMS';
-my $Is_MSWin32 = $^O eq 'MSWin32';
-my $Is_NetWare = $^O eq 'NetWare';
my $Is_MacOS = $^O eq 'MacOS';
my $tmpfile = "tmp0000";
-my $i = 0 ;
1 while -e ++$tmpfile;
END { if ($tmpfile) { 1 while unlink $tmpfile} }
@@ -59,7 +56,8 @@ foreach my $file (@w_files) {
undef $/;
-print "1.." . (scalar(@prgs)-$files) . "\n";
+plan tests => (scalar(@prgs)-$files);
+
for (@prgs){
@@ -73,7 +71,6 @@ for (@prgs){
my @temp_path = () ;
if (s/^\s*-\w+//){
$switch = $&;
- $switch =~ s/(-\S*[A-Z]\S*)/"$1"/ if $Is_VMS; # protect uc switches
}
my($prog,$expected) = split(/\nEXPECT\n/, $_);
my ($todo, $todo_reason);
@@ -81,7 +78,7 @@ for (@prgs){
if ( $prog =~ /--FILE--/) {
my(@files) = split(/\n--FILE--\s*([^\s\n]*)\s*\n/, $prog) ;
shift @files ;
- die "Internal error test $i didn't split into pairs, got " .
+ die "Internal error test $test didn't split into pairs, got " .
scalar(@files) . "[" . join("%%%%", @files) ."]\n"
if @files % 2 ;
while (@files > 2) {
@@ -116,15 +113,7 @@ for (@prgs){
print TEST "\n#line 1\n"; # So the line numbers don't get messed up.
print TEST $prog,"\n";
close TEST or die "Cannot close $tmpfile: $!";
- my $results = $Is_VMS ?
- `./perl "-I../lib" $switch $tmpfile` :
- $Is_MSWin32 ?
- `.\\perl -I../lib $switch $tmpfile` :
- $Is_NetWare ?
- `perl -I../lib $switch $tmpfile` :
- $Is_MacOS ?
- `$^X -I::lib $switch -MMac::err=unix $tmpfile` :
- `./perl -I../lib $switch $tmpfile`;
+ my $results = runperl( switches => [$switch], stderr => 1, progfile => $tmpfile );
my $status = $?;
$results =~ s/\n+$//;
# allow expected output to be written as if $prog is on STDIN
@@ -132,9 +121,6 @@ for (@prgs){
if ($^O eq 'VMS') {
# some tests will trigger VMS messages that won't be expected
$results =~ s/\n?%[A-Z]+-[SIWEF]-[A-Z]+,.*//;
-
- # pipes double these sometimes
- $results =~ s/\n\n/\n/g;
}
# bison says 'parse error' instead of 'syntax error',
# various yaccs may or may not capitalize 'syntax'.
@@ -168,12 +154,13 @@ for (@prgs){
}
die "$0: can't have OPTION regex and random\n"
if $option_regex + option_random > 1;
+ my $ok = 1;
if ( $results =~ s/^SKIPPED\n//) {
print "$results\n" ;
}
elsif ($option_random)
{
- print "not " if !randomMatch($results, $expected);
+ $ok = randomMatch($results, $expected);
}
elsif (($prefix && (( $option_regex && $results !~ /^$expected/) ||
(!$option_regex && $results !~ /^\Q$expected/))) or
@@ -189,11 +176,12 @@ for (@prgs){
else {
print STDERR $err_line;
}
- print "not ";
+ $ok = 0;
}
- print "ok " . ++$i;
- print " # TODO$todo_reason" if $todo;
- print "\n";
+
+ $TODO = $todo ? $todo_reason : 0;
+ ok($ok);
+
foreach (@temps)
{ unlink $_ if $_ }
foreach (@temp_path)