Node:Guidelines, Next:Test Functions, Previous:Test Programs, Up:Run Time
Test programs should not write anything to the standard output. They
should return 0 if the test succeeds, nonzero otherwise, so that success
can be distinguished easily from a core dump or other failure;
segmentation violations and other failures produce a nonzero exit
status. Test programs should exit, not return, from
main, because on some systems (old Suns, at least) the argument
to return in main is ignored.
Test programs can use #if or #ifdef to check the values of
preprocessor macros defined by tests that have already run. For
example, if you call AC_HEADER_STDC, then later on in
configure.ac you can have a test program that includes an
ANSI C header file conditionally:
#if STDC_HEADERS # include <stdlib.h> #endif
If a test program needs to use or create a data file, give it a name
that starts with conftest, such as conftest.data. The
configure script cleans up by running rm -rf conftest*
after running test programs and if the script is interrupted.