From: James Coglan Date: Wed, 29 May 2024 09:19:46 +0000 (+0100) Subject: resolved: tests for dns_resource_key_new_append_suffix() X-Git-Tag: v257-rc1~843^2~26 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=d2f786d824f24907f44ffa781dbe5f0004b6c914;p=thirdparty%2Fsystemd.git resolved: tests for dns_resource_key_new_append_suffix() --- diff --git a/src/resolve/test-dns-rr.c b/src/resolve/test-dns-rr.c index 0b99b88a6fa..4f476d20b33 100644 --- a/src/resolve/test-dns-rr.c +++ b/src/resolve/test-dns-rr.c @@ -127,4 +127,37 @@ TEST(dns_resource_key_new_redirect_dname_no_match) { ASSERT_STREQ(dns_resource_key_name(redirected), "www.examples.com"); } +/* ================================================================ + * dns_resource_key_new_append_suffix() + * ================================================================ */ + +TEST(dns_resource_key_new_append_suffix_root) { + _cleanup_(dns_resource_key_unrefp) DnsResourceKey *source = NULL, *target = NULL; + + source = dns_resource_key_new(DNS_CLASS_IN, DNS_TYPE_A, "www.example.com"); + ASSERT_NOT_NULL(source); + + ASSERT_OK(dns_resource_key_new_append_suffix(&target, source, (char *)"")); + ASSERT_NOT_NULL(target); + ASSERT_TRUE(target == source); + + ASSERT_OK(dns_resource_key_new_append_suffix(&target, source, (char *)".")); + ASSERT_NOT_NULL(target); + ASSERT_TRUE(target == source); + + dns_resource_key_unref(source); +} + +TEST(dns_resource_key_new_append_suffix_not_root) { + _cleanup_(dns_resource_key_unrefp) DnsResourceKey *source = NULL, *target = NULL; + + source = dns_resource_key_new(DNS_CLASS_IN, DNS_TYPE_A, "www.example"); + ASSERT_NOT_NULL(source); + + ASSERT_OK(dns_resource_key_new_append_suffix(&target, source, (char *)"com")); + ASSERT_NOT_NULL(target); + ASSERT_FALSE(target == source); + ASSERT_STREQ(dns_resource_key_name(target), "www.example.com"); +} + DEFINE_TEST_MAIN(LOG_DEBUG);