Dave's Unit Test (DUT) is a simple unit testing infrastructure implemented in c-preprocessor macros and GNU make.
[SourceForge Project page] [Getting and Using DUT] [Why Use DUT] [Plans for DUT] [DUT with multiple threads]
=
operator, and compared using the ==
operator.
signal (2)
) and to trap and report on
unexpected signals. (optional)
c
or c++
compiler
with a working preprocessor (if objective c
or the
like works for you, let me know!)
c
or c++
, and you can only test
object files which do not define main()
DUT has been tested with (and only with) various versions of gcc. As of 1 March 2008, the SVN head works with tcc 0.9.23 as well, but not with nwcc 0.7.5. At this point I do not know if this is a fault in my code or in the compiler.
If you know that it does or especially does not work with another compiler, please let me know.
Testing with other compilers turned up a miscellaneous "compatibility" issue: the behaviour of various libc function on bad input is not always specified. So on my PowerBook G4 the code
char *str4 = NULL; printf("%c\n",str4[0]);throws a
SIGBUS
signal. But it does not on my Debian
4.0 machine. A fact which makes requiring certain code to raise a
signal problematic.
Date | Release |
---|---|
7 March 2008 | 0.8.3 |
5 March 2008 | 0.8.2 |
27 Febuary 2008 | 0.8.1 |
Febuary 2008 | 0.8.0 |
type
, and generate the cache variable(s) in
the scope of the test macro? Answer: this looks
promising, and some test macros are in the SVN head. First
release with 0.8.2 to become the standard in 0.9.0
README.dut
, and offer a better
packaged form of documentation.
DUT_SRC_SUF
and DUT_CC
). WE want a way to build object files
using default rules, or to let the user specify the object
file build rules...
mailx
or something?
_DUT_THREAD_SAFE_
. Release with
0.8.3.
Good! Contact me.
That's not so good, but OK.
Leave a bug report or feature request if appropriate, or contact me.