41 lines
1.7 KiB
Text
41 lines
1.7 KiB
Text
|
1999-12-23 DJ Delorie <dj@cygnus.com>
|
||
|
|
||
|
Here are some notes about adding and using this testsuite.
|
||
|
|
||
|
First, all the programs are linked with libcygwin0.a, which is just
|
||
|
like libcygwin.a, except that it wants cygwin0.dll, not
|
||
|
cygwin1.dll. The testsuite adds the winsup build directory to the
|
||
|
PATH so that cygwin0.dll can be found by windows during testing.
|
||
|
|
||
|
Because we'll probably run into complaints about using two DLLs, we
|
||
|
run cygrun.exe for each test. All this does is run the test with
|
||
|
CreateProcess() so that we don't attempt to do the special code for
|
||
|
when a cygwin program calls another cygwin program, as this might be a
|
||
|
"multiple cygwins" problem.
|
||
|
|
||
|
Any test that needs to test command line args or redirection needs to
|
||
|
run such a child program itself, as the testsuite will not do any
|
||
|
arguments or redirection for it. Same for fork, signals, etc.
|
||
|
|
||
|
The testsuite/winsup.api subdirectory is for testing the API to
|
||
|
cygwin1.dll ONLY. Create other subdirs under testsuite/ for other
|
||
|
classes of testing.
|
||
|
|
||
|
Tests in winsup.api/*.c or winsup.api/*/*.c (only one subdirectory
|
||
|
level is allowed) either compile, run, and exit(0) or they fail.
|
||
|
Either abort or exit with a non-zero code to indicate failure. Don't
|
||
|
print anything to the screen if you can avoid it (except for failure
|
||
|
reasons, of course). One .c file per test, no compile options are
|
||
|
allowed (we're testing the api, not the compiler).
|
||
|
|
||
|
Tests whose filename is mentioned in known-bugs.tcl will be *expected*
|
||
|
to fail, and will "fail" if they compile, run, and return zero.
|
||
|
|
||
|
"make check" will only work if you run it *on* an NT machine.
|
||
|
Cross-checking is not supported.
|
||
|
|
||
|
To test a subset of the test-suite, use
|
||
|
$ make check CYGWIN_TESTSUITE_TESTS=regexp
|
||
|
|
||
|
|