]> sourceware.org Git - newlib-cygwin.git/blob - winsup/testsuite/README
92ede0dc7726c461c908b13e6b4b50d5c715ff95
[newlib-cygwin.git] / winsup / testsuite / README
1 1999-12-23 DJ Delorie <dj@cygnus.com>
2
3 Here are some notes about adding and using this testsuite.
4
5 First, all the programs are linked with new-libcygwin.a, which is just
6 like libcygwin.a, except that it wants new-cygwin1.dll, not
7 cygwin1.dll. The testsuite adds the winsup build directory to the
8 PATH so that new-cygwin1.dll can be found by windows during testing.
9
10 Because we'll probably run into complaints about using two DLLs, we
11 run cygrun.exe for each test. All this does is run the test with
12 CreateProcess() so that we don't attempt to do the special code for
13 when a cygwin program calls another cygwin program, as this might be a
14 "multiple cygwins" problem.
15
16 Any test that needs to test command line args or redirection needs to
17 run such a child program itself, as the testsuite will not do any
18 arguments or redirection for it. Same for fork, signals, etc.
19
20 The testsuite/winsup.api subdirectory is for testing the API to
21 cygwin1.dll ONLY. Create other subdirs under testsuite/ for other
22 classes of testing.
23
24 Tests in winsup.api/*.c or winsup.api/*/*.c (only one subdirectory
25 level is allowed) either compile, run, and exit(0) or they fail.
26 Either abort or exit with a non-zero code to indicate failure. Don't
27 print anything to the screen if you can avoid it (except for failure
28 reasons, of course). One .c file per test, no compile options are
29 allowed (we're testing the api, not the compiler).
30
31 Tests whose filename begin with "xf-" will be *expected* to fail, and
32 will "fail" if they compile, run, and return zero. Note that the
33 *only* purpose for adding this feature is to test the testing
34 framework itself. All real tests should NOT be named xf-*, and should
35 pass for real (compile, run, return 0) if the dll is working
36 correctly. Do not use xf-* to "silence" a failure that you know isn't
37 going to get fixed for a while; let it just keep failing. There are
38 five "sample" tests that demonstrate how the framework works and what
39 happens to each condition.
40
41 "make check" will only work if you run it *on* an NT machine.
42 Cross-checking is not supported.
This page took 0.036293 seconds and 4 git commands to generate.