summaryrefslogtreecommitdiffstats
path: root/src/tests
diff options
context:
space:
mode:
Diffstat (limited to 'src/tests')
-rw-r--r--src/tests/cmocka/test_utils.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/tests/cmocka/test_utils.c b/src/tests/cmocka/test_utils.c
index 50a85bcea..874168c2b 100644
--- a/src/tests/cmocka/test_utils.c
+++ b/src/tests/cmocka/test_utils.c
@@ -1624,6 +1624,32 @@ static void test_sss_parse_internal_fqname(void **state)
assert_fqname_unparseable(NULL, EINVAL);
}
+static void test_sss_create_internal_fqname(void **state)
+{
+ char *fqname = NULL;
+
+ check_leaks_push(global_talloc_context);
+
+ fqname = sss_create_internal_fqname(global_talloc_context, "foo", "bar");
+ assert_string_equal(fqname, "foo@bar");
+ talloc_zfree(fqname);
+
+ fqname = sss_create_internal_fqname(global_talloc_context, "foo", "BAR");
+ assert_string_equal(fqname, "foo@bar");
+ talloc_zfree(fqname);
+
+ fqname = sss_create_internal_fqname(global_talloc_context, "foo", NULL);
+ assert_null(fqname);
+
+ fqname = sss_create_internal_fqname(global_talloc_context, NULL, "bar");
+ assert_null(fqname);
+
+ fqname = sss_create_internal_fqname(global_talloc_context, NULL, NULL);
+ assert_null(fqname);
+
+ assert_true(check_leaks_pop(global_talloc_context) == true);
+}
+
int main(int argc, const char *argv[])
{
poptContext pc;
@@ -1709,6 +1735,9 @@ int main(int argc, const char *argv[])
cmocka_unit_test_setup_teardown(test_sss_parse_internal_fqname,
setup_leak_tests,
teardown_leak_tests),
+ cmocka_unit_test_setup_teardown(test_sss_create_internal_fqname,
+ setup_leak_tests,
+ teardown_leak_tests),
};
/* Set debug level to invalid value so we can deside if -d 0 was used. */