From 84bd0fb2c6192b737b587ef4fa4ace1685f685bb Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Tue, 14 Feb 2006 05:27:37 +0000 Subject: document new test framework --- test/README | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 test/README (limited to 'test') diff --git a/test/README b/test/README new file mode 100644 index 000000000..e6c3d892e --- /dev/null +++ b/test/README @@ -0,0 +1,49 @@ +----------- + For: User +----------- + +The following make variables may help you in testing: + - UCLIBC_ONLY - only run tests against uClibc + - GLIBC_ONLY - only run tests against glibc + - COMPILE_ONLY - just build the tests, don't run them + - V / VERBOSE - run tests with a lot of output + +So, to just run the uClibc tests, try this: +make check UCLIBC_ONLY=1 + +---------------- + For: Developer +---------------- + +The structure of this test system is: + test/ toplevel dir containing common test code + test/Rules.mak Common build code + test/Test.mak Runtime test make code + test/subdir/ code specific to a subsystem is stored in a subdir + test/subdir/Makefile describe the tests to run + test/subdir/*.c the tests + +Each subdir Makefile must define the TESTS variable and include the +toplevel Test.mak file: +TESTS := foo +include ../Test.mak +Each test must use a similar .c name; so the "foo" test needs a "foo.c". + +Additionally, the following options further control specific test behavior: +CFLAGS_foo := extra cflags to use to compile test +DODIFF_foo := compare the output of the glibc and uClibc tests (see below) +LDFLAGS_foo := extra ldflags to use to link test +OPTS_foo := extra options to pass to test +RET_foo := expected exit code of test; default is 0 +WRAPPER_foo := execute stuff just before test + +Or to control all tests in a subdir: +EXTRA_CLEAN := extra files to remove in the clean target +EXTRA_CFLAGS := -DFOO +EXTRA_LDFLAGS := -lpthread +OPTS := +WRAPPER := + +If you want to compare the output of a test with known good output, then just +create a local file named "foo.out.good" and the output generated by the test +"foo" will be automatically stored in "foo.out" and compared to "foo.out.good". -- cgit v1.2.3