diff options
| author | Wilmer van der Gaast <wilmer@gaast.net> | 2007-07-06 00:39:47 +0100 | 
|---|---|---|
| committer | Wilmer van der Gaast <wilmer@gaast.net> | 2007-07-06 00:39:47 +0100 | 
| commit | e90044208fc88636f843cdd188faa12e5db8c1c0 (patch) | |
| tree | 1238997e7436af5192ce8e127a783d3d687a9ff4 /tests/check_set.c | |
| parent | 9da0bbfd42609f0f3864b5a16a3c1c378b7217c9 (diff) | |
| parent | 19a8088455308088139d0b2f6a8d0d4fbf982b29 (diff) | |
Merging from devel. Added documentation for the join_chat command, adding
a debian/ tree and a merge from Jelmer (mainly unittest stuff).
Diffstat (limited to 'tests/check_set.c')
| -rw-r--r-- | tests/check_set.c | 130 | 
1 files changed, 130 insertions, 0 deletions
| diff --git a/tests/check_set.c b/tests/check_set.c new file mode 100644 index 00000000..b1ea973d --- /dev/null +++ b/tests/check_set.c @@ -0,0 +1,130 @@ +#include <stdlib.h> +#include <glib.h> +#include <gmodule.h> +#include <check.h> +#include <string.h> +#include "set.h" +#include "testsuite.h" + +START_TEST(test_set_add) +	void *data = "data"; +	set_t *s = NULL, *t; +	t = set_add(&s, "name", "default", NULL, data); +	fail_unless(s == t); +	fail_unless(t->data == data); +	fail_unless(strcmp(t->def, "default") == 0); +END_TEST + +START_TEST(test_set_add_existing) +	void *data = "data"; +	set_t *s = NULL, *t; +	t = set_add(&s, "name", "default", NULL, data); +	t = set_add(&s, "name", "newdefault", NULL, data); +	fail_unless(s == t); +	fail_unless(strcmp(t->def, "newdefault") == 0); +END_TEST + +START_TEST(test_set_find_unknown) +	set_t *s = NULL, *t; +	fail_unless (set_find(&s, "foo") == NULL); +END_TEST + +START_TEST(test_set_find) +	void *data = "data"; +	set_t *s = NULL, *t; +	t = set_add(&s, "name", "default", NULL, data); +	fail_unless(s == t); +	fail_unless(set_find(&s, "name") == t); +END_TEST + +START_TEST(test_set_get_str_default) +	void *data = "data"; +	set_t *s = NULL, *t; +	t = set_add(&s, "name", "default", NULL, data); +	fail_unless(s == t); +	fail_unless(strcmp(set_getstr(&s, "name"), "default") == 0); +END_TEST + +START_TEST(test_set_get_bool_default) +	void *data = "data"; +	set_t *s = NULL, *t; +	t = set_add(&s, "name", "true", NULL, data); +	fail_unless(s == t); +	fail_unless(set_getbool(&s, "name")); +END_TEST + +START_TEST(test_set_get_bool_integer) +	void *data = "data"; +	set_t *s = NULL, *t; +	t = set_add(&s, "name", "3", NULL, data); +	fail_unless(s == t); +	fail_unless(set_getbool(&s, "name") == 3); +END_TEST + +START_TEST(test_set_get_bool_unknown) +	set_t *s = NULL; +	fail_unless(set_getbool(&s, "name") == 0); +END_TEST + +START_TEST(test_set_get_str_value) +	void *data = "data"; +	set_t *s = NULL, *t; +	t = set_add(&s, "name", "default", NULL, data); +	set_setstr(&s, "name", "foo"); +	fail_unless(strcmp(set_getstr(&s, "name"), "foo") == 0); +END_TEST + +START_TEST(test_set_get_str_unknown) +	set_t *s = NULL; +	fail_unless(set_getstr(&s, "name") == NULL); +END_TEST + +START_TEST(test_setint) +	void *data = "data"; +	set_t *s = NULL, *t; +	t = set_add(&s, "name", "10", NULL, data); +	set_setint(&s, "name", 3); +	fail_unless(set_getint(&s, "name") == 3); +END_TEST + +START_TEST(test_setstr) +	void *data = "data"; +	set_t *s = NULL, *t; +	t = set_add(&s, "name", "foo", NULL, data); +	set_setstr(&s, "name", "bloe"); +	fail_unless(strcmp(set_getstr(&s, "name"), "bloe") == 0); +END_TEST + +START_TEST(test_setstr_implicit) +	void *data = "data"; +	set_t *s = NULL, *t; +	set_setstr(&s, "name", "bloe"); +	fail_unless(set_find(&s, "name") != NULL); +END_TEST + +START_TEST(test_set_get_int_unknown) +	set_t *s = NULL; +	fail_unless(set_getint(&s, "foo") == 0); +END_TEST + +Suite *set_suite (void) +{ +	Suite *s = suite_create("Set"); +	TCase *tc_core = tcase_create("Core"); +	suite_add_tcase (s, tc_core); +	tcase_add_test (tc_core, test_set_add); +	tcase_add_test (tc_core, test_set_add_existing); +	tcase_add_test (tc_core, test_set_find_unknown); +	tcase_add_test (tc_core, test_set_find); +	tcase_add_test (tc_core, test_set_get_str_default); +	tcase_add_test (tc_core, test_set_get_str_value); +	tcase_add_test (tc_core, test_set_get_str_unknown); +	tcase_add_test (tc_core, test_set_get_bool_default); +	tcase_add_test (tc_core, test_set_get_bool_integer); +	tcase_add_test (tc_core, test_set_get_bool_unknown); +	tcase_add_test (tc_core, test_set_get_int_unknown); +	tcase_add_test (tc_core, test_setint); +	tcase_add_test (tc_core, test_setstr); +	tcase_add_test (tc_core, test_setstr_implicit); +	return s; +} | 
