The concordance testing subject

Script files provided:

blanklines.txt - test input file
mkFaultMatrix.sh - script to generate the concordance/info/fault-matrix file
monitorTestCase.tcsh - script to monitor test execution
oneTestCase.sh - script to run a single test case
prepare.sh - prepares input files for test execution (used by runall.tcsh)
runall.tcsh - runs all tests on the concordance subject
run-conc-gcov.sh - run a gcov monitored test (not fully working)
run-conc-noOut.sh - run a test with outputs suppressed
run-conc-normal.sh - same as run-conc.sh, main test execution script
run-conc.sh - runs concordance test on the specified input file
sandbox - directory for running tests
testCases.txt - a shell script file reflecting the test suite each on a single line

General usage information:
To use this subject first copy the original or mutated version of concordance
from the versions.alt/{versions.orig/mutants} directory into the source
directory.  The mutated versions are named mutantN.cc.gz where N is a number
in the range of 1 to 200, representing 200 mutated (faulty) versions of the
concordance.cc source.

Now you can build the object using the GNU C++ compiler via the command:
g++ concordance.cc -o concordance.exe

In older versions of the GNU C++ compiler it was necessary to copy the
malloc.h into the malloc subdirectory of the source directory in order for
it to compile.  This only applies to ancient GNU compiler versions so only
copy malloc.h into the source/malloc directory if your compiler cannot find
the malloc.h file.

Once you have compiled, your executable is now ready to be tested.  To run
the tests, execute the runall.tcsh script.  This script will capture the
outputs from the test execution and place them into files under the outputs
directory.

See the mkFaultMatrix.sh script for a step-wise example of how to provision
for the experiment.

The original fault set comprised of manually derived source code mutations
is also provided.  See the README.txt provided with the original version
of concordance (versions.alt/versions.orig/README.txt) for details on how
to activate these faults in lieu of the mutation faults provided.


