diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 2002-05-10 13:48:10 +0000 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2002-05-10 13:48:10 +0000 |
commit | e018f8be847d79ec3f2a470a400d481ec2d7bbd6 (patch) | |
tree | 7c969788feea58f88b8116c7e454c1272a65dbf2 | |
parent | 436c6dd385a3b29cadf4fa091af1c55eed665e29 (diff) | |
download | perl-e018f8be847d79ec3f2a470a400d481ec2d7bbd6.tar.gz |
Don't do JAPHs unless doing "make torturetest".
Document the less obvious make test targets.
p4raw-id: //depot/perl@16534
-rw-r--r-- | Makefile.SH | 7 | ||||
-rw-r--r-- | pod/perlhack.pod | 41 | ||||
-rwxr-xr-x | t/TEST | 9 | ||||
-rw-r--r-- | t/harness | 8 |
4 files changed, 61 insertions, 4 deletions
diff --git a/Makefile.SH b/Makefile.SH index 2c123c6750..3361b42ae1 100644 --- a/Makefile.SH +++ b/Makefile.SH @@ -980,7 +980,7 @@ makedepend: makedepend.SH config.sh .PHONY: test check test_prep test_prep_nodll test_prep_pre _test_prep \ test_tty test-tty _test_tty test_notty test-notty _test_notty \ - utest ucheck test.utf8 check.utf8 \ + utest ucheck test.utf8 check.utf8 test.torture torturetest \ test.third check.third utest.third ucheck.third test_notty.third \ test.deparse test_notty.deparse \ minitest coretest @@ -1037,6 +1037,11 @@ test-tty: test_tty test-notty: test_notty +# Torture testing + +test.torture torturetest: test_prep + PERL=./perl TEST_ARGS=-torture $(MAKE) _test + # Targets for Third Degree testing. test_prep.third: test_prep perl.third diff --git a/pod/perlhack.pod b/pod/perlhack.pod index 97772b8b23..2750e9e495 100644 --- a/pod/perlhack.pod +++ b/pod/perlhack.pod @@ -1803,6 +1803,47 @@ You must be triply conscious of cross-platform concerns. This usually boils down to using File::Spec and avoiding things like C<fork()> and C<system()> unless absolutely necessary. +=head2 Special Make Test Targets + +There are various special make targets that can be used to test Perl +slightly differently than the standard "test" target. Not all them +are expected to give a 100% success rate. Many of them have several +aliases. + +=over 4 + +=item coretest + +Run F<perl> on all but F<lib/*> tests. + +=item test.deparse + +Run all the tests through the B::Deparse. Not all tests will succeed. + +=item minitest + +Run F<miniperl> on F<t/base>, F<t/comp>, F<t/cmd>, F<t/run>, F<t/io>, +F<t/op>, and F<t/uni> tests. + +=item test.third check.third utest.third ucheck.third + +(Only in Tru64) Run all the tests using the memory leak + naughty +memory access tool "Third Degree". The log files will be named +F<perl3.log.testname>. + +=item test.torture torturetest + +Run all the usual tests and some extra tests. As of Perl 5.8.0 the +only extra tests are Abigail's JAPHs, t/japh/abigail.t. + +You can also run the torture test with F<t/harness> by giving +C<-torture> argument to F<t/harness>. + +=item utest ucheck test.utf8 check.utf8 + +Run all the tests with -Mutf8. Not all tests will succeed. + +=back =head1 EXTERNAL TOOLS FOR DEBUGGING PERL @@ -19,6 +19,7 @@ if ($#ARGV >= 0) { push( @argv, $ARGV[$idx] ), next unless $ARGV[$idx] =~ /^-(\S+)$/; $core = 1 if $1 eq 'core'; $verbose = 1 if $1 eq 'v'; + $torture = 1 if $1 eq 'torture'; $with_utf= 1 if $1 eq 'utf8'; $byte_compile = 1 if $1 eq 'bytecompile'; $compile = 1 if $1 eq 'compile'; @@ -110,9 +111,11 @@ unless (@ARGV) { } else { warn "$0: cannot open $mani: $!\n"; } - _find_tests('pod') unless $core; - _find_tests('x2p') unless $core; - _find_tests('japh') unless $core; + unless ($core) { + _find_tests('pod'); + _find_tests('x2p'); + _find_tests('japh') if $torture; + } } # Tests known to cause infinite loops for the perlcc tests. @@ -9,11 +9,18 @@ BEGIN { $ENV{PERL5LIB} = '../lib'; # so children will see it too } +my $torture; # torture testing? + use Test::Harness; $Test::Harness::switches = ""; # Too much noise otherwise $Test::Harness::verbose = shift if @ARGV && $ARGV[0] eq '-v'; +if ($ARGV[0] eq '-torture') { + shift; + $torture = 1; +} + # Let tests know they're running in the perl core. Useful for modules # which live dual lives on CPAN. $ENV{PERL_CORE} = 1; @@ -57,6 +64,7 @@ if (@ARGV) { push @tests, <op/*.t>; push @tests, <uni/*.t>; push @tests, <lib/*.t>; + push @tests, <japh/*.t> if $torture; push @tests, <win32/*.t> if $^O eq 'MSWin32'; use File::Spec; my $updir = File::Spec->updir; |