On Sat, Dec 7, 2013 at 7:02 PM, Art Heimsoth <artstore@artheimsoth.com> wrote:
Mark, I have 8.1 on one of my systems and have installed
Visual Studio 2013, specifically the VS Express 2013 for Windows.
Should I have something more or else beside this?

I also do not know how to check out the tests, so need more
detail instructions concerning the command:
as to where I enter it, and what should happen.  I tried it with
Firefox on my Win7 system, but don't think anything happened.

More basic help needed.. thanks,

Hi Art,

The first step is checking out the code.  That is what svn is for, it is a Subversion client.  You can download a a good Windows client from:

http://www.sliksvn.com/en/download

Get 32-bit or 64-bit as per your system.  The SlikSVN client has always worked well for me.  This is a command line tool.  After you install it, open a command prompt window to run it.  The command:

svn co svn://svn.code.sf.net/p/oorexx/code-0/test/trunk ooTest

will check out (co) the source code from the URL you give it, into the directory you specify as the second arg.  Check out the code where ever is good for you.  For example:

C:\work.ooRexx\wc\ooTest\4.x>cd \

C:\>md work

C:\>cd work

C:\work>svn co svn://svn.code.sf.net/p/oorexx/code-0/test/trunk ooTest
A    ooTest\building.frm
A    ooTest\testOORexx.rex
A    ooTest\external
A    ooTest\external\API
A    ooTest\external\API\orxinvocation.cpp
A    ooTest\external\API\orxclassicexits.def
...
A    ooTest\bin\LINUX
A    ooTest\bin\AIX
A    ooTest\bin\WINDOWS
A    ooTest\setTestEnv.bat
A    ooTest\setTestEnv.sh
 U   ooTest
Checked out revision 9641.

C:\work>dir
 Volume in drive C is Win7
 Volume Serial Number is D25E-50D5

 Directory of C:\work

12/07/2013  08:05 PM    <DIR>          .
12/07/2013  08:05 PM    <DIR>          ..
12/07/2013  08:05 PM    <DIR>          ooTest
               0 File(s)              0 bytes
               3 Dir(s)   1,224,912,896 bytes free

C:\work>

Okay, now you have the ooTest suite on your system.

There is a lot more to Subversion than that, but that is all you need to check out any of the ooRexx source code.  You can not change the code in the repository, so do anything you want with the source code.

svn stores all its information in the directory tree you created by checking out the code, and on the server.  There is nothing on your system you need to clean up.  Tired of having the code on your system, just delete it:

C:\work>dir
 Volume in drive C is Win7
 Volume Serial Number is D25E-50D5

 Directory of C:\work

12/07/2013  08:05 PM    <DIR>          .
12/07/2013  08:05 PM    <DIR>          ..
12/07/2013  08:05 PM    <DIR>          ooTest
               0 File(s)              0 bytes
               3 Dir(s)   1,224,953,856 bytes free

C:\work>rd /q /s ooTest

C:\work>dir
 Volume in drive C is Win7
 Volume Serial Number is D25E-50D5

 Directory of C:\work

12/07/2013  08:11 PM    <DIR>          .
12/07/2013  08:11 PM    <DIR>          ..
               0 File(s)              0 bytes
               2 Dir(s)   1,240,829,952 bytes free

C:\work>

You wanted to play around with the source code, made a lot of changes to the code on your system, and now wish you could get back the original code, just delete the directory and check out the code again.

To run the test suite:

C:\work>dir
 Volume in drive C is Win7
 Volume Serial Number is D25E-50D5

 Directory of C:\work

12/07/2013  08:13 PM    <DIR>          .
12/07/2013  08:13 PM    <DIR>          ..
12/07/2013  08:13 PM    <DIR>          ooTest
               0 File(s)              0 bytes
               3 Dir(s)   1,229,049,856 bytes free

C:\work>cd ooTest

C:\work\ooTest>testOORexx
Searching for test containers....


For now just skip the native API tests:

C:\work>dir
 Volume in drive C is Win7
 Volume Serial Number is D25E-50D5

 Directory of C:\work

12/07/2013  08:13 PM    <DIR>          .
12/07/2013  08:13 PM    <DIR>          ..
12/07/2013  08:13 PM    <DIR>          ooTest
               0 File(s)              0 bytes
               3 Dir(s)   1,229,049,856 bytes free

C:\work>cd ooTest

C:\work\ooTest>testOORexx
Searching for test containers....


testOORexx is the main Rexx program that drives the test suit.  Assuming you have the ooRexx file associations set up, just type testOORexx to run all the tests.  It takes about 12 minutes for the test suite to finish, so just be patient.

You should see tick marks or other output so you'll know you are making progress:

C:\work\ooTest>testOORexx
Searching for test containers....
Executing automated test suite.........................     .....................
.......................................................................class2~init
class3~init
class1~init
class2~activate
class3~activate
class1~activate
....
.foo
..........................................................................
.

The test framework itself is an interesting concept.  It is designed for anyone to use to automate testing of their own Rexx programs.  After you check out the code you can explore the files in the directory tree.  There is some documentation and examples on how to write automated tests.

We would just love for ooRexx users to write more automated tests for ooRexx.  Anyone that can write a simple ooRexx program could write tests for our test suite.  To get a test started only takes filling out a little boiler plate code.  If you are at all interested in doing that, just open up a discussion on this list, I'll gladly give you all the help you need.

However, just running the test suite on Windows 8 is a big help for me.  Take it a step at a time and as you get familiar with the test suite you can move on to more advanced use through a series of Q and A on the list here.

Now, as I was writing the test suite was running and finished.  The end of the output looks like this:

...
[Framework exception] [20131207 20:15:06.289000]
  Type: Trap Severity: Fatal
  File: C:\work\ooTest\ooRexx\API\oo\RexxStart.testGroup
  Line: 56
  Failed to load the external API package needed for this test group.
  Condition: SYNTAX
    Unable to load library "orxinvocation"
    File: C:\work\ooTest\ooRexx\API\oo\INVOCATIONTester.cls
    Line: 50
      50 *-* ::method !init PRIVATE EXTERNAL 'LIBRARY orxinvocation init'
         *-* Compiled method LOADPACKAGE with scope "Package"
      56 *-* .context~package~loadPackage('INVOCATIONTester.cls')
    2076 *-* call (file) self~testTypes
    2024 *-*   container = self~getContainer(fileName)
      85 *-* containers = finder~seek(testResult)
      79 *-* retCode = 'worker.rex'(arguments)


Interpreter:     REXX-ooRexx_4.2.0(MT)_64-bit 6.04 7 Dec 2013
Addressing Mode: 64
ooRexxUnit:      2.0.0_3.2.0    ooTest: 1.0.0_4.0.0

Tests ran:           19627
Assertions:          576899
Failures:            3
Errors:              8
Skipped files:       4

File search:        00:00:03.054000
Suite construction: 00:00:02.003000
Test execution:     00:05:16.931000
Total time:         00:05:22.227000


C:\work\ooTest>

 The stats at the bottom are what I'm interested in seeing for Windows 8.  You can see above about 20 thousand tests were run with about a half a million assertions.  3 test failures and 8 errors.  Errors are not problems found in the interpreter, they mean something in the test framework did not work as expected.

Above the stats is a bunch of goobly-gook about each error or failure.  In our example this:

[Framework exception] [20131207 20:15:06.289000]
  Type: Trap Severity: Fatal
  File: C:\work\ooTest\ooRexx\API\oo\RexxStart.testGroup
  Line: 56
  Failed to load the external API package needed for this test group.
  Condition: SYNTAX
    Unable to load library "orxinvocation"
    File: C:\work\ooTest\ooRexx\API\oo\INVOCATIONTester.cls
    Line: 50
      50 *-* ::method !init PRIVATE EXTERNAL 'LIBRARY orxinvocation init'
         *-* Compiled method LOADPACKAGE with scope "Package"
      56 *-* .context~package~loadPackage('INVOCATIONTester.cls')
    2076 *-* call (file) self~testTypes
    2024 *-*   container = self~getContainer(fileName)
      85 *-* containers = finder~seek(testResult)
      79 *-* retCode = 'worker.rex'(arguments)

comes because I didn't tell the test suite to skip the native API, and I also didn't compile the native API tests.

For yourself to first get started, skip the native API tests by using the -X exclude flag:

C:\work\ooTest>testOORexx.rex -X native_api
Searching for test containers....

Just getting to where you can execute the whole test suite is a great first step.  If the test suite itself seems interesting to you, there is a lot to explore, as I said, I'll gladly give advice on the list here.

--
Mark Miesfeld