I mentioned to Michael Schwern
recently that I'd look into seeing if we could
support a "test_harness" target in the VMS
build. Enclosed is a patch that provides it
but running:
mmk test_harness
runs into a lot of "spurious" failures
and does not even appear as nice
as running harness by hand by:
1) defining your PERL_ROOT to point to the build tree
(and assign perl foreign symbol if needed).
2) set def [.t]
3) perl "-I[-.lib]" harness
At any rate this could cut the preliminary
modifications to files vms/descrip_mms.template
and to vms/test.com. Would anyone object to this
approach? Note that I have shifted the "''p\d'"
parameters handled by test.com so as to use p3
for turning in the harness run (while leaving the
TEST run the default). Does that seem OK?
diff -ru perl_21251/vms/descrip_mms.template perl/vms/descrip_mms.template
--- perl_21251/vms/descrip_mms.template 2003-09-02 09:42:01.000000000 -0400
+++ perl/vms/descrip_mms.template 2003-09-18 15:45:56.000000000 -0400
@@ -1226,6 +1226,10 @@
- @[.VMS]Test.Com "$(E)" "$(__DEBUG__)"
@ $(MINIPERL) -e "print ""Ran tests"";" > [.t]rantests.
+test_harness : all [.t.lib]vmsfspec.t [.t.lib]vms_dclsym.t [.t.lib]vms_stdio.t
+ - @[.VMS]Test.Com "$(E)" "$(__DEBUG__)" "HARNESS"
+ @ $(MINIPERL) -e "print ""Ran tests"";" > [.t]rantests.
+
# install ought not need a source, but it doesn't work if one's not
# there. Go figure...
install : $(MINIPERL_EXE)
diff -ru perl_21251/vms/test.com perl/vms/test.com
--- perl_21251/vms/test.com 2003-09-02 09:42:02.000000000 -0400
+++ perl/vms/test.com 2003-09-18 16:36:08.000000000 -0400
@@ -1,5 +1,6 @@
$! Test.Com - DCL wrapper for perl5 regression test driver
$!
+$! Version 2.1 18-September-2003 Peter Prymmer added t/harness support.
$! Version 2.0 25-April-2002 Craig Berry [EMAIL PROTECTED]
$! (and many other hands in the last 7+ years)
$! The most significant difference is that we now run the external t/TEST
@@ -18,7 +19,9 @@
$!
$! Process arguments. P1 is the file extension of the Perl images. P2,
$! when not empty, indicates that we are testing a version of Perl built for
-$! the VMS debugger. The other arguments are passed directly to t/TEST.
+$! the VMS debugger. P3 may indicate the desire to run [.t]harness. rather
+$! than [.t]TEST. The other arguments are passed directly to t/TEST but
+$! not to t/harness.
$!
$ exe = ".Exe"
$ If p1.nes."" Then exe = p1
@@ -26,7 +29,7 @@
$ Then
$ Write Sys$Error ""
$ Write Sys$Error "The first parameter passed to Test.Com must be the file type
used for the"
-$ Write Sys$Error "images produced when you built Perl (i.e. "".Exe"", unless you
edited"
+$ Write Sys$Error "images produced when you built Perl, i.e. "".Exe"", unless you
edited"
$ Write Sys$Error "Descrip.MMS or used the AXE=1 macro in the MM[SK] command
line."
$ Write Sys$Error ""
$ $status = 44
@@ -73,7 +76,12 @@
$ PerlShr_filespec = f$parse("Sys$Disk:[-]''dbg'PerlShr''exe'")
$ Define 'dbg'Perlshr 'PerlShr_filespec'
$ If F$Mode() .nes. "INTERACTIVE" Then Define/Nolog PERL_SKIP_TTY_TEST 1
-$ MCR Sys$Disk:[]Perl. "-I[-.lib]" TEST. "''p3'" "''p4'" "''p5'" "''p6'"
+$ If p3 .eqs. "HARNESS"
+$ Then
+$ MCR Sys$Disk:[]Perl. "-I[-.lib]" harness.
+$ Else
+$ MCR Sys$Disk:[]Perl. "-I[-.lib]" TEST. "''p4'" "''p5'" "''p6'" "''p7'" "''p8'"
+$ Endif
$ goto wrapup
$!
$ Control_Y_exit:
End of possible patch.
(See attached file: test_harness.patch)
Peter Prymmer
test_harness.patch
Description: Binary data
