From: Martin Willi Date: Tue, 24 Feb 2015 14:56:37 +0000 (+0100) Subject: unit-tests: Add host_create_from_dns() test cases resolving "localhost" X-Git-Tag: 5.3.0dr1~68 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0ae862efd1a0225a13ab1e8d18cbf749cf3a2023;p=thirdparty%2Fstrongswan.git unit-tests: Add host_create_from_dns() test cases resolving "localhost" --- diff --git a/src/libstrongswan/tests/suites/test_host.c b/src/libstrongswan/tests/suites/test_host.c index ec3c83f81c..1a3c9476f1 100644 --- a/src/libstrongswan/tests/suites/test_host.c +++ b/src/libstrongswan/tests/suites/test_host.c @@ -236,6 +236,42 @@ START_TEST(test_create_from_string_and_family_other) } END_TEST +/******************************************************************************* + * host_create_from_dns + */ + +static void test_create_from_dns(int family, chunk_t addr) +{ + host_t *host; + + host = host_create_from_dns("localhost", family, 500); + ck_assert(host); + if (family != AF_UNSPEC) + { + verify_address(host, addr, family, 500); + } + host->destroy(host); +} + +START_TEST(test_create_from_dns_any) +{ + test_create_from_dns(AF_UNSPEC, chunk_empty); +} +END_TEST + +START_TEST(test_create_from_dns_v4) +{ + test_create_from_dns(AF_INET, chunk_from_chars(127,0,0,1)); +} +END_TEST + +START_TEST(test_create_from_dns_v6) +{ + test_create_from_dns(AF_INET6, + chunk_from_chars(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1)); +} +END_TEST + /******************************************************************************* * host_create_from_sockaddr */ @@ -694,6 +730,12 @@ Suite *host_suite_create() tcase_add_test(tc, test_create_from_string_and_family_other); suite_add_tcase(s, tc); + tc = tcase_create("host_create_from_dns"); + tcase_add_test(tc, test_create_from_dns_any); + tcase_add_test(tc, test_create_from_dns_v4); + tcase_add_test(tc, test_create_from_dns_v6); + suite_add_tcase(s, tc); + tc = tcase_create("host_create_from_sockaddr"); tcase_add_test(tc, test_create_from_sockaddr_v4); tcase_add_test(tc, test_create_from_sockaddr_v6);