ucspi-tcp6 1.13.02
ucspi-tcp6
|
Starting with ucspi-tcp, DJB introduced a script called 'rts.test' to do some unit/system tests for the modules included in here.
This piece of software was never documented nor its purpose was defined. William Baxter modified it to work with ucspi-ssl. DJB used it in the release of djbdns.
Within /slashpackage 'rts' consists of the following pieces:
a) package/rts [component] is a generic shell script. b) src/rts.[it], src/rts.[component] are the scripts containing the specific unit tests. src/rts.it is usually the supervising script, while src/rts.base includes typically the 'basic' unit tests, src/rts.[component] is optional. c) src/exp.[it], src.[bases] and perhaps src/exp.[component] include the expected results (adapted).
While [it] and [base] are mandatory, any further [component] needs to be defined by the (slash)package installation.
'rts' is typically called after a successful compilation and prior of installation. The $PATH variable includes the current directory of the executed rts.it (./compile). In order to test the included modules one calls:
package/rts --> all tests are done (including optional) package/rts base --> basic unit tests package/rts [component] --> optional component test
The script rts.[component] is executed in
./compile/rts-tmp
to be raised upon call. The results are written to
./compile/out.[component]
and then diff'ed against exp.[component], cleaned up for trivial run dependencies (like port numbers) and the difference is displayed.
If there is no difference, nothing is displayed => working as expected.
However, even if differences are given, they may be due to environment/call dependencies (like process ids) resulting in some mangled output.
In case package/rts is called again, the previous results are overwritten.
–eh (July, 2019).