From 336d5a5374b0aff2157eedf996cd1ed90e2d8917 Mon Sep 17 00:00:00 2001 From: Joey Date: Wed, 14 Nov 2018 20:30:41 +0800 Subject: [PATCH] convert update_test; remove ATF from lib/dns/tests --- lib/dns/tests/Makefile.in | 130 +++++++------- lib/dns/tests/dnstest.c | 23 ++- lib/dns/tests/update_test.c | 345 +++++++++++++++++------------------- 3 files changed, 241 insertions(+), 257 deletions(-) diff --git a/lib/dns/tests/Makefile.in b/lib/dns/tests/Makefile.in index f295f613d6..d3ec3f4936 100644 --- a/lib/dns/tests/Makefile.in +++ b/lib/dns/tests/Makefile.in @@ -24,10 +24,8 @@ ISCDEPLIBS = ../../isc/libisc.@A@ DNSLIBS = ../libdns.@A@ @DNS_CRYPTO_LIBS@ DNSDEPLIBS = ../libdns.@A@ -LIBS = @LIBS@ @ATFLIBS@ - -CMOCKA_CFLAGS = @CMOCKA_CFLAGS@ -CMOCKA_LIBS = @CMOCKA_LIBS@ +LIBS = @LIBS@ @CMOCKA_LIBS@ +CFLAGS = @CFLAGS@ @CMOCKA_CFLAGS@ OBJS = dnstest.@O@ SRCS = acl_test.c \ @@ -98,59 +96,59 @@ TARGETS = acl_test@EXEEXT@ \ @BIND9_MAKE_RULES@ acl_test@EXEEXT@: acl_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ acl_test.@O@ dnstest.@O@ ${DNSLIBS} \ - ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${ISCLIBS} ${LIBS} db_test@EXEEXT@: db_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ db_test.@O@ dnstest.@O@ ${DNSLIBS} \ - ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${ISCLIBS} ${LIBS} dbdiff_test@EXEEXT@: dbdiff_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ dbdiff_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} dbiterator_test@EXEEXT@: dbiterator_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLFAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ dbiterator_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} dbversion_test@EXEEXT@: dbversion_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ dbversion_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} dh_test@EXEEXT@: dh_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ dh_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} dispatch_test@EXEEXT@: dispatch_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ dispatch_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} dnstap_test@EXEEXT@: dnstap_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ dnstap_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} dst_test@EXEEXT@: dst_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ dst_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} geoip_test@EXEEXT@: geoip_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ geoip_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} keytable_test@EXEEXT@: keytable_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ keytable_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} master_test@EXEEXT@: master_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} test -d testdata || mkdir testdata @@ -161,106 +159,106 @@ master_test@EXEEXT@: master_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} > testdata/master/master13.data ${PERL} ${srcdir}/mkraw.pl < ${srcdir}/testdata/master/master14.data.in \ > testdata/master/master14.data - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ master_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} name_test@EXEEXT@: name_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ name_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} nsec3_test@EXEEXT@: nsec3_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ nsec3_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} peer_test@EXEEXT@: peer_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ peer_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} private_test@EXEEXT@: private_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ private_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} rbt_serialize_test@EXEEXT@: rbt_serialize_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ rbt_serialize_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} rbt_test@EXEEXT@: rbt_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ rbt_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} rdata_test@EXEEXT@: rdata_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ rdata_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} rdataset_test@EXEEXT@: rdataset_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ rdataset_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} rdatasetstats_test@EXEEXT@: rdatasetstats_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ rdatasetstats_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} resolver_test@EXEEXT@: resolver_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ resolver_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} result_test@EXEEXT@: result_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ result_test.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} rsa_test@EXEEXT@: rsa_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ rsa_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} sigs_test@EXEEXT@: sigs_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ sigs_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} time_test@EXEEXT@: time_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ time_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} WRAP = -Wl,--wrap=isc__mem_put,--wrap=isc__mem_get,--wrap=isc_mem_attach,--wrap=isc_mem_detach tkey_test@EXEEXT@: tkey_test.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} if test "${LD_WRAP}" = true; then wrap="${WRAP}"; fi; \ - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ tkey_test.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} $$wrap + ${DNSLIBS} ${ISCLIBS} ${LIBS} tsig_test@EXEEXT@: tsig_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ tsig_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} update_test@EXEEXT@: update_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ update_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} zonemgr_test@EXEEXT@: zonemgr_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ zonemgr_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} zt_test@EXEEXT@: zt_test.@O@ dnstest.@O@ ${ISCDEPLIBS} ${DNSDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} \ ${LDFLAGS} -o $@ zt_test.@O@ dnstest.@O@ \ - ${DNSLIBS} ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} + ${DNSLIBS} ${ISCLIBS} ${LIBS} unit:: sh ${top_builddir}/unit/unittest.sh diff --git a/lib/dns/tests/dnstest.c b/lib/dns/tests/dnstest.c index b574c59394..c2f927095d 100644 --- a/lib/dns/tests/dnstest.c +++ b/lib/dns/tests/dnstest.c @@ -13,14 +13,21 @@ #include -#include +#include +#include +#include #include #include +#include #include #include #include +#if HAVE_CMOCKA +#define UNIT_TESTING +#include + #include #include #include @@ -395,7 +402,7 @@ dns_test_tohex(const unsigned char *data, size_t len, char *buf, size_t buflen) memset(buf, 0, buflen); isc_buffer_init(&target, buf, buflen); result = isc_hex_totext((isc_region_t *)&source, 1, " ", &target); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); + assert_int_equal(result, ISC_R_SUCCESS); return (buf); } @@ -538,14 +545,13 @@ dns_test_namefromstring(const char *namestr, dns_fixedname_t *fname) { length = strlen(namestr); - result = isc_buffer_allocate(mctx, &b, length); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); - isc_buffer_putmem(b, (const unsigned char *) namestr, length); - name = dns_fixedname_initname(fname); - ATF_REQUIRE(name != NULL); + + result = isc_buffer_allocate(mctx, &b, length); + + isc_buffer_putmem(b, (const unsigned char *) namestr, length); result = dns_name_fromtext(name, b, dns_rootname, 0, NULL); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); + assert_int_equal(result, ISC_R_SUCCESS); isc_buffer_free(&b); } @@ -621,3 +627,4 @@ dns_test_difffromchanges(dns_diff_t *diff, const zonechange_t *changes, return (result); } +#endif /* HAVE_CMOCKA */ diff --git a/lib/dns/tests/update_test.c b/lib/dns/tests/update_test.c index 1585ed7a74..94f9c97923 100644 --- a/lib/dns/tests/update_test.c +++ b/lib/dns/tests/update_test.c @@ -10,334 +10,313 @@ */ -/*! \file */ - #include -#include +#if HAVE_CMOCKA +#include +#include +#include + +#include +#include #include #include #include +#define UNIT_TESTING +#include + #include #include +#include #include #include "dnstest.h" +static int +_setup(void **state) { + isc_result_t result; + + UNUSED(state); + + result = dns_test_begin(NULL, false); + assert_int_equal(result, ISC_R_SUCCESS); + + setenv("TZ", "", 1); + + return (0); +} + +static int +_teardown(void **state) { + UNUSED(state); + + dns_test_end(); + + return (0); +} + static uint32_t mystdtime; -static void set_mystdtime(int year, int month, int day) { +static void +set_mystdtime(int year, int month, int day) { struct tm tm; memset(&tm, 0, sizeof(tm)); tm.tm_year = year - 1900; tm.tm_mon = month - 1; tm.tm_mday = day; - mystdtime = timegm(&tm) ; + mystdtime = timegm(&tm); } void isc_stdtime_get(isc_stdtime_t *now) { *now = mystdtime; } -/* - * Individual unit tests - */ - -ATF_TC(increment); -ATF_TC_HEAD(increment, tc) { - atf_tc_set_md_var(tc, "descr", "simple increment by 1"); -} -ATF_TC_BODY(increment, tc) { +/* simple increment by 1 */ +static void +increment_test(void **state) { uint32_t old = 50; uint32_t serial; - isc_result_t result; - UNUSED(tc); + UNUSED(state); - result = dns_test_begin(NULL, false); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); serial = dns_update_soaserial(old, dns_updatemethod_increment); - ATF_REQUIRE_EQ(isc_serial_lt(old, serial), true); - ATF_CHECK_MSG(serial != 0, "serial (%d) should not equal 0", serial); - ATF_REQUIRE_EQ(serial, 51); - dns_test_end(); + assert_true(isc_serial_lt(old, serial)); + assert_int_not_equal(serial, 0); + assert_int_equal(serial, 51); } -/* 0xfffffffff -> 1 */ -ATF_TC(increment_past_zero); -ATF_TC_HEAD(increment_past_zero, tc) { - atf_tc_set_md_var(tc, "descr", "increment past zero, ffffffff -> 1"); -} -ATF_TC_BODY(increment_past_zero, tc) { +/* increment past zero, 0xfffffffff -> 1 */ +static void +increment_past_zero_test(void **state) { uint32_t old = 0xffffffffu; uint32_t serial; - isc_result_t result; - UNUSED(tc); + UNUSED(state); - result = dns_test_begin(NULL, false); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); serial = dns_update_soaserial(old, dns_updatemethod_increment); - ATF_REQUIRE_EQ(isc_serial_lt(old, serial), true); - ATF_CHECK(serial != 0); - ATF_REQUIRE_EQ(serial, 1u); - dns_test_end(); + assert_true(isc_serial_lt(old, serial)); + assert_int_not_equal(serial, 0); + assert_int_equal(serial, 1u); } -ATF_TC(past_to_unix); -ATF_TC_HEAD(past_to_unix, tc) { - atf_tc_set_md_var(tc, "descr", "past to unixtime"); -} -ATF_TC_BODY(past_to_unix, tc) { +/* past to unixtime */ +static void +past_to_unix_test(void **state) { uint32_t old; uint32_t serial; - isc_result_t result; - UNUSED(tc); + UNUSED(state); set_mystdtime(2011, 6, 22); old = mystdtime - 1; - result = dns_test_begin(NULL, false); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); serial = dns_update_soaserial(old, dns_updatemethod_unixtime); - ATF_REQUIRE_EQ(isc_serial_lt(old, serial), true); - ATF_CHECK(serial != 0); - ATF_REQUIRE_EQ(serial, mystdtime); - dns_test_end(); + assert_true(isc_serial_lt(old, serial)); + assert_int_not_equal(serial, 0); + assert_int_equal(serial, mystdtime); } -ATF_TC(now_to_unix); -ATF_TC_HEAD(now_to_unix, tc) { - atf_tc_set_md_var(tc, "descr", "now to unixtime"); -} -ATF_TC_BODY(now_to_unix, tc) { +/* now to unixtime */ +static void +now_to_unix_test(void **state) { uint32_t old; uint32_t serial; - isc_result_t result; - UNUSED(tc); + UNUSED(state); set_mystdtime(2011, 6, 22); old = mystdtime; - result = dns_test_begin(NULL, false); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); serial = dns_update_soaserial(old, dns_updatemethod_unixtime); - ATF_REQUIRE_EQ(isc_serial_lt(old, serial), true); - ATF_CHECK(serial != 0); - ATF_REQUIRE_EQ(serial, old + 1); - dns_test_end(); + assert_true(isc_serial_lt(old, serial)); + assert_int_not_equal(serial, 0); + assert_int_equal(serial, old + 1); } -ATF_TC(future_to_unix); -ATF_TC_HEAD(future_to_unix, tc) { - atf_tc_set_md_var(tc, "descr", "future to unixtime"); -} -ATF_TC_BODY(future_to_unix, tc) { +/* future to unixtime */ +static void +future_to_unix_test(void **state) { uint32_t old; uint32_t serial; - isc_result_t result; - UNUSED(tc); + UNUSED(state); set_mystdtime(2011, 6, 22); old = mystdtime + 1; - result = dns_test_begin(NULL, false); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); serial = dns_update_soaserial(old, dns_updatemethod_unixtime); - ATF_REQUIRE_EQ(isc_serial_lt(old, serial), true); - ATF_CHECK(serial != 0); - ATF_REQUIRE_EQ(serial, old + 1); - dns_test_end(); + assert_true(isc_serial_lt(old, serial)); + assert_int_not_equal(serial, 0); + assert_int_equal(serial, old + 1); } -ATF_TC(undefined_plus1_to_unix); -ATF_TC_HEAD(undefined_plus1_to_unix, tc) { - atf_tc_set_md_var(tc, "descr", "undefined plus 1 to unixtime"); -} -ATF_TC_BODY(undefined_plus1_to_unix, tc) { +/* undefined plus 1 to unixtime */ +static void +undefined_plus1_to_unix_test(void **state) { uint32_t old; uint32_t serial; - isc_result_t result; - UNUSED(tc); + UNUSED(state); set_mystdtime(2011, 6, 22); old = mystdtime ^ 0x80000000u; old += 1; - result = dns_test_begin(NULL, false); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); serial = dns_update_soaserial(old, dns_updatemethod_unixtime); - ATF_REQUIRE_EQ(isc_serial_lt(old, serial), true); - ATF_CHECK(serial != 0); - ATF_REQUIRE_EQ(serial, mystdtime); - dns_test_end(); + assert_true(isc_serial_lt(old, serial)); + assert_int_not_equal(serial, 0); + assert_int_equal(serial, mystdtime); } -ATF_TC(undefined_minus1_to_unix); -ATF_TC_HEAD(undefined_minus1_to_unix, tc) { - atf_tc_set_md_var(tc, "descr", "undefined minus 1 to unixtime"); -} -ATF_TC_BODY(undefined_minus1_to_unix, tc) { +/* undefined minus 1 to unixtime */ +static void +undefined_minus1_to_unix_test(void **state) { uint32_t old; uint32_t serial; - isc_result_t result; - UNUSED(tc); + UNUSED(state); set_mystdtime(2011, 6, 22); old = mystdtime ^ 0x80000000u; old -= 1; - result = dns_test_begin(NULL, false); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); serial = dns_update_soaserial(old, dns_updatemethod_unixtime); - ATF_REQUIRE_EQ(isc_serial_lt(old, serial), true); - ATF_CHECK(serial != 0); - ATF_REQUIRE_EQ(serial, old + 1); - dns_test_end(); + assert_true(isc_serial_lt(old, serial)); + assert_int_not_equal(serial, 0); + assert_int_equal(serial, old + 1); } -ATF_TC(undefined_to_unix); -ATF_TC_HEAD(undefined_to_unix, tc) { - atf_tc_set_md_var(tc, "descr", "undefined to unixtime"); -} -ATF_TC_BODY(undefined_to_unix, tc) { +/* undefined to unixtime */ +static void +undefined_to_unix_test(void **state) { uint32_t old; uint32_t serial; - isc_result_t result; - UNUSED(tc); + UNUSED(state); set_mystdtime(2011, 6, 22); old = mystdtime ^ 0x80000000u; - result = dns_test_begin(NULL, false); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); serial = dns_update_soaserial(old, dns_updatemethod_unixtime); - ATF_REQUIRE_EQ(isc_serial_lt(old, serial), true); - ATF_CHECK(serial != 0); - ATF_REQUIRE_EQ(serial, old + 1); - dns_test_end(); + assert_true(isc_serial_lt(old, serial)); + assert_int_not_equal(serial, 0); + assert_int_equal(serial, old + 1); } -ATF_TC(unixtime_zero); -ATF_TC_HEAD(unixtime_zero, tc) { - atf_tc_set_md_var(tc, "descr", "handle unixtime being zero"); -} -ATF_TC_BODY(unixtime_zero, tc) { +/* handle unixtime being zero */ +static void +unixtime_zero_test(void **state) { uint32_t old; uint32_t serial; - isc_result_t result; - UNUSED(tc); + UNUSED(state); mystdtime = 0; old = 0xfffffff0; - result = dns_test_begin(NULL, false); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); serial = dns_update_soaserial(old, dns_updatemethod_unixtime); - ATF_REQUIRE_EQ(isc_serial_lt(old, serial), true); - ATF_CHECK(serial != 0); - ATF_REQUIRE_EQ(serial, old + 1); - dns_test_end(); + assert_true(isc_serial_lt(old, serial)); + assert_int_not_equal(serial, 0); + assert_int_equal(serial, old + 1); } -ATF_TC(past_to_date); -ATF_TC_HEAD(past_to_date, tc) { - atf_tc_set_md_var(tc, "descr", "past to date"); -} -ATF_TC_BODY(past_to_date, tc) { +/* past to date */ +static void +past_to_date_test(void **state) { uint32_t old, serial; - isc_result_t result; - UNUSED(tc); + UNUSED(state); set_mystdtime(2014, 3, 31); old = dns_update_soaserial(0, dns_updatemethod_date); set_mystdtime(2014, 4, 1); - result = dns_test_begin(NULL, false); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); serial = dns_update_soaserial(old, dns_updatemethod_date); - ATF_REQUIRE_EQ(isc_serial_lt(old, serial), true); - ATF_CHECK(serial != 0); - ATF_REQUIRE_EQ(serial, 2014040100); - dns_test_end(); + + assert_true(isc_serial_lt(old, serial)); + assert_int_not_equal(serial, 0); + assert_int_equal(serial, 2014040100); } -ATF_TC(now_to_date); -ATF_TC_HEAD(now_to_date, tc) { - atf_tc_set_md_var(tc, "descr", "now to date"); -} -ATF_TC_BODY(now_to_date, tc) { +/* now to date */ +static void +now_to_date_test(void **state) { uint32_t old; uint32_t serial; - isc_result_t result; - UNUSED(tc); + UNUSED(state); set_mystdtime(2014, 4, 1); old = dns_update_soaserial(0, dns_updatemethod_date); - result = dns_test_begin(NULL, false); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); serial = dns_update_soaserial(old, dns_updatemethod_date); - ATF_REQUIRE_EQ(isc_serial_lt(old, serial), true); - ATF_CHECK(serial != 0); - ATF_REQUIRE_EQ(serial, 2014040101); - dns_test_end(); + assert_true(isc_serial_lt(old, serial)); + assert_int_not_equal(serial, 0); + assert_int_equal(serial, 2014040101); } -ATF_TC(future_to_date); -ATF_TC_HEAD(future_to_date, tc) { - atf_tc_set_md_var(tc, "descr", "future to date"); -} -ATF_TC_BODY(future_to_date, tc) { +/* future to date */ +static void +future_to_date_test(void **state) { uint32_t old; uint32_t serial; - isc_result_t result; - UNUSED(tc); + UNUSED(state); set_mystdtime(2014, 4, 1); old = dns_update_soaserial(0, dns_updatemethod_date); set_mystdtime(2014, 3, 31); - result = dns_test_begin(NULL, false); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); serial = dns_update_soaserial(old, dns_updatemethod_date); - ATF_REQUIRE_EQ(isc_serial_lt(old, serial), true); - ATF_CHECK(serial != 0); - ATF_REQUIRE_EQ(serial, 2014040101); - dns_test_end(); + assert_true(isc_serial_lt(old, serial)); + assert_int_not_equal(serial, 0); + assert_int_equal(serial, 2014040101); } -/* - * Main - */ -ATF_TP_ADD_TCS(tp) { - ATF_TP_ADD_TC(tp, increment); - ATF_TP_ADD_TC(tp, increment_past_zero); - ATF_TP_ADD_TC(tp, past_to_unix); - ATF_TP_ADD_TC(tp, now_to_unix); - ATF_TP_ADD_TC(tp, future_to_unix); - ATF_TP_ADD_TC(tp, undefined_to_unix); - ATF_TP_ADD_TC(tp, undefined_plus1_to_unix); - ATF_TP_ADD_TC(tp, undefined_minus1_to_unix); - ATF_TP_ADD_TC(tp, unixtime_zero); - ATF_TP_ADD_TC(tp, past_to_date); - ATF_TP_ADD_TC(tp, now_to_date); - ATF_TP_ADD_TC(tp, future_to_date); +int +main(void) { + const struct CMUnitTest tests[] = { + cmocka_unit_test_setup_teardown(increment_test, + _setup, _teardown), + cmocka_unit_test_setup_teardown(increment_past_zero_test, + _setup, _teardown), + cmocka_unit_test_setup_teardown(past_to_unix_test, + _setup, _teardown), + cmocka_unit_test_setup_teardown(now_to_unix_test, + _setup, _teardown), + cmocka_unit_test_setup_teardown(future_to_unix_test, + _setup, _teardown), + cmocka_unit_test_setup_teardown(undefined_to_unix_test, + _setup, _teardown), + cmocka_unit_test_setup_teardown(undefined_plus1_to_unix_test, + _setup, _teardown), + cmocka_unit_test_setup_teardown(undefined_minus1_to_unix_test, + _setup, _teardown), + cmocka_unit_test_setup_teardown(unixtime_zero_test, + _setup, _teardown), + cmocka_unit_test_setup_teardown(past_to_date_test, + _setup, _teardown), + cmocka_unit_test_setup_teardown(now_to_date_test, + _setup, _teardown), + cmocka_unit_test_setup_teardown(future_to_date_test, + _setup, _teardown), + }; - return (atf_no_error()); + return (cmocka_run_group_tests(tests, NULL, NULL)); } +#else /* HAVE_CMOCKA */ + +#include + +int +main(void) { + printf("1..0 # Skipped: cmocka not available\n"); + return (0); +} + +#endif