1*10898Sroland.mainz@nrubsig.org 2*10898Sroland.mainz@nrubsig.org#### ksh93 test suite 3*10898Sroland.mainz@nrubsig.org 4*10898Sroland.mainz@nrubsig.org## Intro 5*10898Sroland.mainz@nrubsig.orgThe directory /usr/demo/ksh/tests/ contains the ksh93 test suite 6*10898Sroland.mainz@nrubsig.orgwhich is used to verify the correct behaviour of ksh93. 7*10898Sroland.mainz@nrubsig.org 8*10898Sroland.mainz@nrubsig.orgThe test suite is split into modules with the ending *.sh 9*10898Sroland.mainz@nrubsig.organd a frontend called "shtests" which is used to run the tests. 10*10898Sroland.mainz@nrubsig.org 11*10898Sroland.mainz@nrubsig.org 12*10898Sroland.mainz@nrubsig.org## Basic description: 13*10898Sroland.mainz@nrubsig.org/usr/demo/ksh/tests/shtests <options> <varname=value> <testmodule> 14*10898Sroland.mainz@nrubsig.org 15*10898Sroland.mainz@nrubsig.org<options> may be: 16*10898Sroland.mainz@nrubsig.org -a execute test module one time as normal script code 17*10898Sroland.mainz@nrubsig.org and a 2nd time as compiled shell script. The env 18*10898Sroland.mainz@nrubsig.org variable SHCOMP defines the version of the shell 19*10898Sroland.mainz@nrubsig.org compiler being used (default is "${SHELL%/*}/shcomp", 20*10898Sroland.mainz@nrubsig.org however it is recommended to explicitly set SHCOMP 21*10898Sroland.mainz@nrubsig.org to /usr/bin/shcomp). 22*10898Sroland.mainz@nrubsig.org -c execute test module as compiled shell script 23*10898Sroland.mainz@nrubsig.org -s execute test module as normal shell script 24*10898Sroland.mainz@nrubsig.org -t do not print timing information 25*10898Sroland.mainz@nrubsig.org -v use VMDEBUG 26*10898Sroland.mainz@nrubsig.org<varname=value> 27*10898Sroland.mainz@nrubsig.org Sets one or more environment variables to value "value". 28*10898Sroland.mainz@nrubsig.org<testmodule> 29*10898Sroland.mainz@nrubsig.org file name of test module 30*10898Sroland.mainz@nrubsig.org 31*10898Sroland.mainz@nrubsig.org 32*10898Sroland.mainz@nrubsig.org## Basic usage in Solaris >= 11 and OpenSolaris/Indiana: 33*10898Sroland.mainz@nrubsig.orgThe tests can be executed like this: 34*10898Sroland.mainz@nrubsig.org$ export SHELL=<path-to-ksh93-executable> 35*10898Sroland.mainz@nrubsig.org$ export SHCOMP=/usr/bin/shcomp 36*10898Sroland.mainz@nrubsig.orgfor t in /usr/demo/ksh/tests/*.sh ; do 37*10898Sroland.mainz@nrubsig.org $SHELL /usr/demo/ksh/tests/shtests -a "$t" 38*10898Sroland.mainz@nrubsig.orgdone 39*10898Sroland.mainz@nrubsig.org 40*10898Sroland.mainz@nrubsig.orgNote that you MUST NOT use "/usr/bin/ksh93" as value for 41*10898Sroland.mainz@nrubsig.orgSHELL since /usr/bin/ksh93 on Solaris is a wrapper which 42*10898Sroland.mainz@nrubsig.orgselects a suitable executable in /usr/bin/<isa>/ksh93 43*10898Sroland.mainz@nrubsig.orgbased on the hardware capabilities defined via /usr/bin/isalist 44*10898Sroland.mainz@nrubsig.org 45*10898Sroland.mainz@nrubsig.orgValid values for SHELL are: 46*10898Sroland.mainz@nrubsig.org- SHELL=/usr/bin/i86/ksh93 # 32bit i386 47*10898Sroland.mainz@nrubsig.org- SHELL=/usr/bin/amd64/ksh93 # 64bit AMD64 48*10898Sroland.mainz@nrubsig.org- SHELL=/usr/bin/sparcv7/ksh93 # 32bit SPARC 49*10898Sroland.mainz@nrubsig.org- SHELL=/usr/bin/sparcv9/ksh93 # 64bit SPARC 50*10898Sroland.mainz@nrubsig.org- SHELL=/usr/bin/s390/ksh93 # 32bit SystemZ 51*10898Sroland.mainz@nrubsig.org- SHELL=/usr/bin/s390x/ksh93 # 64bit SystemZ 52*10898Sroland.mainz@nrubsig.org 53*10898Sroland.mainz@nrubsig.org# EOF. 54