
testit v06 - test-suite for hc12 - find n-th prime number
             on http://www.hugi.de/compo

Copyright (C) 2000 by Guido Hahn(meph), ghahn@compuserve.com, mephware@web.de 



'Testit.exe' can handle any kind of executable (.com, .exe 16/32 bit), so you
can also test your intermediate programs, which are eventually not written in 
asm and linked to a com file. The drawback is, testit.exe must be executed from
within a Win32 console. Please read 'changes' below this paragraph, to get 
further informations, how it works (or even better, take a look in the source-
code). 

-meph


Usage:

testit: [options]
        -f<filename>  override default file to test, default=entry.com
        -h, -?        show this screen
        -i<filename>  Optional path and filename for the lookuptable,
                      if file is not found a new one will be created.
                      default = primes
        -n<num_runs>  create n test runs, n = [1,10], default = 5

        -q            use quiet mode, all output goes to log.txt
        -r            use random order of test values
        -t<timeout>   allowed time in ms, default=90000
        -v<testvalue> jam in a test value, default=5 random test values
        -ve           force an empty commandline value

example: testit -t6000 -fmyprog.com -v0 -v1 -v1000000 -n4 -i..\other\primes

         Run myprog.com 4 times with the values: 0, 1, 1000000 and one
         random value. Load lookup table  ..\other\primes .
         Terminate test after 6000 ms (if it is still running).



changes from v05 to v06
        -Fixed the Bug, which caused values of 0(zero) to fail. That Bug
         was introduced in v04?

changes from v04 to v05:
        -the batch file, which is created on the fly changed from:
         entry.com %1 >values to entry.com %1>values

changes from v03 to v04:
        -The entry is now called through a batch file, which is created
         on the fly, to simulate a real console (Dos-Box).
         Note: the workaround, I described in the mailing list, is not longer
               necessary, DON'T USE THAT WORKAROUND WITH THIS VERSION!!!
        -added a switch -r to force random value order, that was proposed
         by Aphex
        -the entries are now forced to redirect their output to a file,
         I validate the output by examining the contents of this file.
         Thanx to Ruud, who suggested this procedure
        -added a sub-switch -ve to force an empty commandline, this switch
         is equivalent to -v with values > 1000000
        -the random value generator now creates values, which simulate
         an empty commandline (s.a.)
        -changed the procedure to measure time-outs, an extra Thread was
         not longer necessary due to changes from v02 to v03

changes from v02 to v03:
        -The bug, which caused the test-suite to verify the clients result 
         against an incorrect value, when the cursor was not in the last row, 
         is now fixed.
        -The test-suite honners now the 90 seconds time-limit, which is 
         defined in the final rules, for each individual test run. You may 
         still override this value with the switch /t<time>.

changes from v01 to v02: 
        -search for lookup-table (primes) in current directory
        -create lookup-table if not present       
        -added a switch (-i<lookup_table_file>) -> include lookuptable
        -implemented an error count
        -main returns now nerror as ExitCode
        -added switch -q -> testit output goes to log.txt
        -corrected some errors, which I thought were allready corrected,
         must have switched the source files (I hope I did not miss any 
         errors)


