diff options
author | Mike Frysinger <vapier@gentoo.org> | 2008-11-16 05:32:35 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2008-11-16 05:32:35 +0000 |
commit | 96a5fad2341df12d4569d357acc6156719a4a101 (patch) | |
tree | 18db21bfab568f501d69f4753d01e05615662b65 | |
parent | sb_printf: implement %*s support (diff) | |
download | sandbox-96a5fad2341df12d4569d357acc6156719a4a101.tar.gz sandbox-96a5fad2341df12d4569d357acc6156719a4a101.tar.bz2 sandbox-96a5fad2341df12d4569d357acc6156719a4a101.zip |
add tests for sb_printf()
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
-rw-r--r-- | configure.ac | 1 | ||||
-rw-r--r-- | tests/Makefile.am | 7 | ||||
-rw-r--r-- | tests/sb_printf_tst.c | 45 |
3 files changed, 52 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac index c742274..faf0f6f 100644 --- a/configure.ac +++ b/configure.ac @@ -5,6 +5,7 @@ AC_CONFIG_HEADER([config.h]) dnl Checks for programs. AC_PROG_CC +AM_PROG_CC_C_O AC_ISC_POSIX AC_PROG_INSTALL AC_PROG_MAKE_SET diff --git a/tests/Makefile.am b/tests/Makefile.am index c86d4ff..8a812eb 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -40,7 +40,12 @@ check_PROGRAMS = \ unlinkat-0 \ utime-0 \ utimensat-0 \ - utimes-0 + utimes-0 \ + \ + sb_printf_tst + +sb_printf_tst_CFLAGS = -I$(top_srcdir)/libsbutil -I$(top_srcdir)/libsbutil/include +sb_printf_tst_LDADD = $(top_builddir)/libsbutil/libsbutil.la check-local: atconfig atlocal $(TESTSUITE) $(SHELL) '$(TESTSUITE)' $(TESTSUITEFLAGS) diff --git a/tests/sb_printf_tst.c b/tests/sb_printf_tst.c new file mode 100644 index 0000000..7c9bf33 --- /dev/null +++ b/tests/sb_printf_tst.c @@ -0,0 +1,45 @@ +#include "headers.h" +#include "sbutil.h" + +#define T(fmt, args...) \ + do { \ + printf(fmt "\n", ##args); \ + sb_printf(fmt "\n", ##args); \ + } while (0) + +int main(int argc, char *argv[]) +{ + T("%i", argc); + T("%i", -argc); + T("%d", 123); + T("%d", -123); + T("%u", 1000); + T("%zi", argc); + T("%zi", -argc); + T("%zd", 123); + T("%zd", -123); + T("%zu", 1000); + + T("%x", argc); + T("%x", 0xabcdef); + T("%X", argc); + T("%X", 0xabcdef); + + T("%c", 'a'); + T("%c", '0'); + T("%c", 'K'); + T("%s", "wOOf"); + T("%s", "CoW"); + T("%s", "!HI!"); + + size_t i; + for (i = 0; i < 6; ++i) + T("%s%*s%s", "{pre}", i, "cow", "{post}"); + + T("%%"); + + void *moo = (void *)0x123456; + T("%p", moo); + + return 0; +} |