

			PSWrap Test Suite
			

	The pswrap test (invoked as "pswtest") is a C shell script that
	tests the pswrap program and the files it generates. The script
	does this by executing the programs and redirecting the standard
	output and standard error to seperate files. The files are then
	compared with known good files to see if any differences exist.
	The test requires some files to be present in the current directory
	at the time of execution. These files are called good.tmpl,
	bad.tmpl, good.h.tmpl, ascii.tmpl, outfile.tmpl, goodfile.psw,
	and badfile.psw.
	
	Since many of these tests involve comparing compiler, and
	preprocessor, and test program output to a known good version,
	small differences in system software can show up as errors.
	Differences in floating point calculations can also show up as
	spurious errors; you may see
		<  47.122501 50.264 53.405499 56.547001 59.688499 
		---
		>  47.1225 50.264 53.4055 56.547 59.6885 
	reported as an error.  Before concluding that there is a problem
	with your build, inspect any differences carefully.

	If your C compiler supports ANSI C, change the line
	set ANSI=0
	in pswtest to
	set ANSI=1
	Without this change, pswtest will still test pswrap's ability to
	produce ANSI C files, but it will not attempt to compile or run
	the resulting programs.

	The following is a list of the tests:
	
	Error Detection Test 
		Tests PSWraps ability to detect errors. Uses the
	files badfile.psw and compares the pswrap generated errors
	with bad.tmpl. Errors of this type are considered warnings
	because new error detection or a change in error messages should
	will cause the test to fail, eventhough there is not a problem.
	
	Code Generation Comparison Test
		This checks the output of pswrap to see if has changed.
	As with the previous test, if this test fails it should only be
	considered a warning. This test uses the good.tmpl and
	good.h.tmpl files.
	
	PSWrap Execution Test
		Tests if pswrap reported any errors while it was
	running. The test just checks if pswrap sent any messages
	to standard error.
	
	C Compilation Test
		Checks to see if the code generated by pswrap can
	compile without any errors.
	
	Wrap Execution and Visible Output Test
		This test runs the code that was compiled in the
	previous test and checks that the DPS server does what was
	expected. The test generates output to standard out that
	gets redirected into a file for comparison. It also draws
	a visable message on the screen that reads "PSWrap Test",
	inside of a box.
	
	 Line Number Test
	 	This test will check that the "#line ..." statements
	 for the C file are correct. The test does not as yet check
	 #line statements for the .psw file.
	 
	 Binary Object Sequence Test
	 	Tests to see if the wrap is sending the correct binary
	 object sequence to the DPS server. It does this by using
	 a client library call in the test program to send output
	 to a named file. The output is in ascii format.
	 
	 
	 If the tests pass without error (not including warnings) the 
	 message: "Passed pswrap test suite" will be displayed.
