test: add unit test for dns_name_parent()
This commit is contained in:
@@ -842,4 +842,40 @@ TEST(dns_name_dot_suffixed) {
|
||||
assert_se(dns_name_dot_suffixed("foo.bar\\.\\.\\.\\.") == 0);
|
||||
}
|
||||
|
||||
TEST(dns_name_parent) {
|
||||
const char *name = "hoge.hoge.foo.bar.example.com";
|
||||
|
||||
ASSERT_OK_EQ(dns_name_parent(&name), (int) STRLEN("hoge"));
|
||||
ASSERT_STREQ(name, "hoge.foo.bar.example.com");
|
||||
ASSERT_OK_EQ(dns_name_parent(&name), (int) STRLEN("hoge"));
|
||||
ASSERT_STREQ(name, "foo.bar.example.com");
|
||||
ASSERT_OK_EQ(dns_name_parent(&name), (int) STRLEN("foo"));
|
||||
ASSERT_STREQ(name, "bar.example.com");
|
||||
ASSERT_OK_EQ(dns_name_parent(&name), (int) STRLEN("bar"));
|
||||
ASSERT_STREQ(name, "example.com");
|
||||
ASSERT_OK_EQ(dns_name_parent(&name), (int) STRLEN("example"));
|
||||
ASSERT_STREQ(name, "com");
|
||||
ASSERT_OK_EQ(dns_name_parent(&name), (int) STRLEN("com"));
|
||||
ASSERT_STREQ(name, "");
|
||||
ASSERT_OK_EQ(dns_name_parent(&name), (int) STRLEN(""));
|
||||
ASSERT_STREQ(name, "");
|
||||
|
||||
name = "hoge.hoge.foo.bar.example.com.";
|
||||
|
||||
ASSERT_OK_EQ(dns_name_parent(&name), (int) STRLEN("hoge"));
|
||||
ASSERT_STREQ(name, "hoge.foo.bar.example.com.");
|
||||
ASSERT_OK_EQ(dns_name_parent(&name), (int) STRLEN("hoge"));
|
||||
ASSERT_STREQ(name, "foo.bar.example.com.");
|
||||
ASSERT_OK_EQ(dns_name_parent(&name), (int) STRLEN("foo"));
|
||||
ASSERT_STREQ(name, "bar.example.com.");
|
||||
ASSERT_OK_EQ(dns_name_parent(&name), (int) STRLEN("bar"));
|
||||
ASSERT_STREQ(name, "example.com.");
|
||||
ASSERT_OK_EQ(dns_name_parent(&name), (int) STRLEN("example"));
|
||||
ASSERT_STREQ(name, "com.");
|
||||
ASSERT_OK_EQ(dns_name_parent(&name), (int) STRLEN("com"));
|
||||
ASSERT_STREQ(name, ""); /* The trailint dot is suppressed. */
|
||||
ASSERT_OK_EQ(dns_name_parent(&name), (int) STRLEN(""));
|
||||
ASSERT_STREQ(name, "");
|
||||
}
|
||||
|
||||
DEFINE_TEST_MAIN(LOG_DEBUG);
|
||||
|
||||
Reference in New Issue
Block a user