summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPavel Březina <pbrezina@redhat.com>2014-10-13 16:20:10 +0200
committerJakub Hrozek <jhrozek@redhat.com>2014-10-14 14:28:43 +0200
commit7a153394bdeb77325b7e4ee1502a1e89fa306f5a (patch)
tree4111fea4872d899bbdb26f91ccae7bf54faaded0
parent09a36be00ddcf1d7bd5b8a368143d5b2e2f4fb68 (diff)
downloadsssd-7a153394bdeb77325b7e4ee1502a1e89fa306f5a.tar.gz
sssd-7a153394bdeb77325b7e4ee1502a1e89fa306f5a.tar.xz
sssd-7a153394bdeb77325b7e4ee1502a1e89fa306f5a.zip
tests: add test for sss_get_domain_name
Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>
-rw-r--r--src/tests/cmocka/test_fqnames.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/tests/cmocka/test_fqnames.c b/src/tests/cmocka/test_fqnames.c
index a3d176af0..71429c877 100644
--- a/src/tests/cmocka/test_fqnames.c
+++ b/src/tests/cmocka/test_fqnames.c
@@ -480,6 +480,29 @@ void sss_parse_name_fail(void **state)
sss_parse_name_check(test_ctx, NAME"\\", EINVAL, NULL, NULL);
}
+void test_sss_get_domain_name(void **state)
+{
+ struct parse_name_test_ctx *test_ctx = talloc_get_type(*state,
+ struct parse_name_test_ctx);
+ struct {
+ const char *input;
+ struct sss_domain_info *domain;
+ const char *expected;
+ } data[] = {{"user", test_ctx->dom, "user"},
+ {"user", test_ctx->subdom, "user@" SUBDOMNAME},
+ {"user@" SUBDOMNAME, test_ctx->subdom, "user@" SUBDOMNAME},
+ {NULL, NULL, NULL}};
+ char *name;
+ int i;
+
+ for (i = 0; data[i].input != NULL; i++) {
+ name = sss_get_domain_name(test_ctx, data[i].input, data[i].domain);
+ assert_non_null(name);
+ assert_string_equal(name, data[i].expected);
+ talloc_free(name);
+ }
+}
+
int main(int argc, const char *argv[])
{
poptContext pc;
@@ -520,6 +543,10 @@ int main(int argc, const char *argv[])
unit_test_setup_teardown(sss_parse_name_fail,
parse_name_test_setup,
parse_name_test_teardown),
+
+ unit_test_setup_teardown(test_sss_get_domain_name,
+ parse_name_test_setup,
+ parse_name_test_teardown),
};
/* Set debug level to invalid value so we can deside if -d 0 was used. */