From: Evan Hunt Date: Wed, 24 Oct 2018 04:20:45 +0000 (-0700) Subject: convert parse_test X-Git-Tag: v9.13.4~21^2~55 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a7c308df9cab8ca09e3e487c89b4f5249782bfb9;p=thirdparty%2Fbind9.git convert parse_test --- diff --git a/lib/isc/tests/Kyuafile b/lib/isc/tests/Kyuafile index 8de9a916714..8120657f55b 100644 --- a/lib/isc/tests/Kyuafile +++ b/lib/isc/tests/Kyuafile @@ -14,7 +14,7 @@ atf_test_program{name='lex_test'} tap_test_program{name='md_test'} atf_test_program{name='mem_test'} atf_test_program{name='netaddr_test'} -atf_test_program{name='parse_test'} +tap_test_program{name='parse_test'} atf_test_program{name='pool_test'} atf_test_program{name='queue_test'} atf_test_program{name='radix_test'} diff --git a/lib/isc/tests/Makefile.in b/lib/isc/tests/Makefile.in index 2bcdb2c092e..e1f79486176 100644 --- a/lib/isc/tests/Makefile.in +++ b/lib/isc/tests/Makefile.in @@ -113,8 +113,9 @@ netaddr_test@EXEEXT@: netaddr_test.@O@ ${ISCDEPLIBS} netaddr_test.@O@ ${ISCLIBS} ${LIBS} parse_test@EXEEXT@: parse_test.@O@ isctest.@O@ ${ISCDEPLIBS} - ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \ - parse_test.@O@ isctest.@O@ ${ISCLIBS} ${LIBS} + ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${CMOCKA_CFLAGS} \ + ${LDFLAGS} -o $@ parse_test.@O@ isctest.@O@ \ + ${ISCLIBS} ${LIBS} ${CMOCKA_LIBS} pool_test@EXEEXT@: pool_test.@O@ isctest.@O@ ${ISCDEPLIBS} ${LIBTOOL_MODE_LINK} ${PURIFY} ${CC} ${CFLAGS} ${LDFLAGS} -o $@ \ diff --git a/lib/isc/tests/parse_test.c b/lib/isc/tests/parse_test.c index edc81395cfa..b0f232d48a0 100644 --- a/lib/isc/tests/parse_test.c +++ b/lib/isc/tests/parse_test.c @@ -13,52 +13,84 @@ #include -#include +#if HAVE_CMOCKA +#include +#include +#include + +#include +#include #include #include #include +#define UNIT_TESTING +#include + #include +#include #include "isctest.h" -/* - * Individual unit tests - */ +static int +_setup(void **state) { + isc_result_t result; -/* Test for 32 bit overflow on 64 bit machines in isc_parse_uint32 */ -ATF_TC(parse_overflow); -ATF_TC_HEAD(parse_overflow, tc) { - atf_tc_set_md_var(tc, "descr", "Check for 32 bit overflow"); + UNUSED(state); + + result = isc_test_begin(NULL, true, 0); + assert_int_equal(result, ISC_R_SUCCESS); + + return (0); } -ATF_TC_BODY(parse_overflow, tc) { + +static int +_teardown(void **state) { + UNUSED(state); + + isc_test_end(); + + return (0); +} + +/* Test for 32 bit overflow on 64 bit machines in isc_parse_uint32 */ +static void +parse_overflow(void **state) { isc_result_t result; uint32_t output; - UNUSED(tc); - result = isc_test_begin(NULL, true, 0); - ATF_REQUIRE_EQ(result, ISC_R_SUCCESS); + UNUSED(state); result = isc_parse_uint32(&output, "1234567890", 10); - ATF_CHECK_EQ(ISC_R_SUCCESS, result); - ATF_CHECK_EQ(1234567890, output); + assert_int_equal(ISC_R_SUCCESS, result); + assert_int_equal(1234567890, output); result = isc_parse_uint32(&output, "123456789012345", 10); - ATF_CHECK_EQ(ISC_R_RANGE, result); + assert_int_equal(ISC_R_RANGE, result); result = isc_parse_uint32(&output, "12345678901234567890", 10); - ATF_CHECK_EQ(ISC_R_RANGE, result); + assert_int_equal(ISC_R_RANGE, result); +} - isc_test_end(); +int +main(void) { + const struct CMUnitTest tests[] = { + cmocka_unit_test_setup_teardown(parse_overflow, + _setup, _teardown), + }; + + return (cmocka_run_group_tests(tests, NULL, NULL)); } -/* - * Main - */ -ATF_TP_ADD_TCS(tp) { - ATF_TP_ADD_TC(tp, parse_overflow); +#else /* HAVE_CMOCKA */ + +#include - return (atf_no_error()); +int +main(void) { + printf("1..0 # Skipped: cmocka not available\n"); + return (0); } +#endif