Read Me
Test Framework (added in Version 3.0)
=====================================
File locations
--------------
class files to be tested tests/test#/
log and reference output files tests/log/
Tests:
------
4 tests as of Version 3.0
in case of
error:
# default run run
#test 1 test.java log/1.out 1.log 1.err
#test 2 class showing finally bug log/2.out 2.log 2.err
#test 3 sample from java/io/* (1.3) log/3.out 3.log 3.err
#test 4 sample from java/io/* (1.4) log/4.out 4.log 4.err
...
Usage:
------
* To run testsuite using valgrind, try "./testall.sh --valgrind"
* For info on how to run tests, try "./testall.sh --help"
The idea of the test framework is to check after every change
in the source code of Jlint whether it still behaves the same
as before the changes. To achieve that, the changed Jlint is
run on sample programs, and the output is compared to the output
of a version of Jlint known to be correct on the same sample
programs. The original output is stored in *.out files while
the current output is written into *.log files. These files are
compared and if they differ the test framework will output a
warning, specifying which file produced the difference. If
Jlint crashes during testing, the error messages are written
into *.err files.
If new features are added to Jlint, its output will change. The new
output has to be verified against the original one. If the new version
is correct, the .out files have to be updated accordingly.