Hmm, I didn't realize messages weren't making it to the list.

Not sure if anyone saw this or not, so I'm resending it.

--
Mark Miesfeld


---------- Forwarded message ----------
From: Mark Miesfeld <[EMAIL PROTECTED]>
Date: Fri, Sep 19, 2008 at 10:36 AM
Subject: Support for building the external test binaries in ooTest
To: ooRexx Dev List <oorexx-devel@lists.sourceforge.net>


All,

I have added support to the ooTest framework to automate the building
of external test binaries during the execution of the test suite.

As of now, the external test binaries consist of the libraries used
for the testing the new native API.  But the mechanism can be extended
to any external binaries we add in the future.

Here are the details.

When you run the test suite, you can use a 'b' option to have the
binaries built automatically.  The framework then builds the binaries
prior to executing any of the test cases.  The little b, '-b' will do
a make.  The big B, '-B' will do a make clean first, then a regular
make.  In effect forcing the binaries to be rebuilt.

I also add a -n option that says you are purposefully not executing
any tests.  This can be used to just do a build and removes a warning
message.

The framework deduces the proper directories for the API includes and
link libraries and sets up the make file to correctly build.  This
works if you have a normal install of ooRexx, or are executing from
the build directory.

I tested pretty thoroughly on Windows and Linux, but of course let me
know right away if you uncover any bugs or inconsistencies.

This syntax:

C:\work.ooRexx\ooRexxUnit\4.x>testOORexx.rex -B -n

would force a build of the binaries and not execute any tests.

This:

C:\work.ooRexx\ooRexxUnit\4.x>testOORexx.rex -b -n

Would do a normal make, if the binaries were up to date, nothing would be done.

A log is kept of what happens when the command is issued.  You can
force the log to print by using a verbosity of 7.  If the build fails
it is treated like any other error, logged, and always printed.

C:\work.ooRexx\ooRexxUnit\4.x>testOORexx.rex -B -n -V 7

would print out the log.

Here is an example of what happens if the build fails:

C:\work.ooRexx\ooRexxUnit\4.x>testOORexx.rex -B -n

ooTest Framework - Automated Test of the ooRexx Interpreter


Interpreter: REXX-ooRexx_4.0.0(MT) 6.03 16 Sep 2008
ooRexxUnit:  2.0.0_3.2.0        ooTest: 1.0.0_4.0.0

Tests ran:           0
Assertions:          0
Failures:            0
 (Known failures:)  0
Errors:              0
Exceptions:          1
Skipped files:       0

[Framework exception] [20080917 15:35:20.265000]
 Type: External Command Failure Severity: Fatal
 File: C:\work.ooRexx\ooRexxUnit\4.x\building.frm
 Line: 173
 Failed to build external binaries
 Issuing make failed
 Command line: nMake /nologo /F Makefile.win
 Return code:  2
 Location: C:\work.ooRexx\ooRexxUnit\4.x\external\API\Makefile.win

       cl /nologo /EHsc /Zi /Od /Gr /MTd  /IC:\home\ooRexx\api
/IC:\home\ooRexx\api\platform\windows /c orx
function.cpp
orxfunction.cpp
       link /NOLOGO /DEBUG -debugtype:cv /SUBSYSTEM:Windows
C:\home\ooRexx\api\rexx.lib C:\home\ooRexx\api\
rexxapi.lib /DLL /def:orxfunction.def orxfunction.obj
  Creating library orxfunction.lib and object orxfunction.exp
       copy orxfunction.dll C:\work.ooRexx\ooRexxUnit\4.x\bin\WINDOWS
       1 file(s) copied.
       cl /nologo /EHsc /Zi /Od /Gr /MTd  /IC:\home\ooRexx\api
/IC:\home\ooRexx\api\platform\windows /c orx
method.cpp
orxmethod.cpp
orxmethod.cpp(837) : error C2039: 'SupplierItem' : is not a member of
'RexxMethodContext_'
       C:\home\ooRexx\api\oorexxapi.h(1255) : see declaration of
'RexxMethodContext_'
orxmethod.cpp(927) : error C2039: 'ArrayItems' : is not a member of
'RexxMethodContext_'
       C:\home\ooRexx\api\oorexxapi.h(1255) : see declaration of
'RexxMethodContext_'
orxmethod.cpp(1059) : error C2039: 'TableAt' : is not a member of
'RexxMethodContext_'
       C:\home\ooRexx\api\oorexxapi.h(1255) : see declaration of
'RexxMethodContext_'
NMAKE : fatal error U1077: 'cl' : return code '0x2'
Stop.


Interpreter: REXX-ooRexx_4.0.0(MT) 6.03 16 Sep 2008
ooRexxUnit:  2.0.0_3.2.0        ooTest: 1.0.0_4.0.0

Tests ran:           0
Assertions:          0
Failures:            0
 (Known failures:)  0
Errors:              0
Exceptions:          1
Skipped files:       0
Messages:            0
Logs:                1

If you have any questions just ask.

--
Mark Miesfeld

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to