This is the mail archive of the libc-hacker@sourceware.cygnus.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

dejagnu testsuite



At ftp://rabi.phys.columbia.edu/pub/zack/testsuite.tar.gz is a
near-complete rework of the libc testsuite in terms of DejaGNU.
Currently it doesn't test everything that `make check' does.  The
missing tests are in the libc.special and libc.unsorted directories of
the tarfile; these require special Expect code (libc.special) or I
haven't figured them out yet (libc.unsorted).

Why do we want this?  It's easier to add tests.  It produces a nice
summary so you don't have to grovel through make output.  It keeps
going when a test fails.  It's significantly faster - runtest
completes in 8m40s on my machine, contrast 17m51s for make check to
get halfway through and fall over.  It forces you to write tests that
give a yes or no answer; we had a lot of tests in there that expected
the maintainer to look at their .out file and decide whether it's
correct.  (All the "expected failures" in this bundle are test cases
that were silently failing in make check.)

Disadvantages are that you have to put the tests in one directory
instead of with the source (minor IMO) and you need Expect (could be
an issue).

For now, try it by untarring the bundle in the top level of the libc
tree, then going to your build directory and typing

make -r -C ../path/to/testsuite check

You'll also need to apply the appended patch to your tree so all the
headers it wants are available.  If you're using egcs-1.0 atest-sincos
will dump core.  Jeff Law says this is fixed in 1.1.  I dunno about
gcc 2.8.

The framework is modeled on c-torture.  I'll have some documentation
shortly.

Comments? Suggestions? Flames?

zw

--- include/execinfo.h	Wed Dec 31 19:00:00 1969
+++ include/execinfo.h	Fri Jul 17 20:54:08 1998	1.1
@@ -0,0 +1 @@
+#include <debug/execinfo.h>
=
--- include/complex.h	Wed Dec 31 19:00:00 1969
+++ include/complex.h	Sun Jul 19 09:07:22 1998	1.1
@@ -0,0 +1 @@
+#include <math/complex.h>
=
--- include/fenv.h	Wed Dec 31 19:00:00 1969
+++ include/fenv.h	Sun Jul 19 09:07:36 1998	1.1
@@ -0,0 +1 @@
+#include <math/fenv.h>
=
--- include/bits/cmathcalls.h	Wed Dec 31 19:00:00 1969
+++ include/bits/cmathcalls.h	Sun Jul 19 09:09:56 1998	1.1
@@ -0,0 +1 @@
+#include <math/bits/cmathcalls.h>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]