From f4b1ce9350d65d549005360ba8ce0d9982a5bc0e Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Tue, 16 Oct 2012 17:01:25 +0200 Subject: [PATCH] tests: Migrate check_std_c_str to cmocka. --- tests/std_tests/check_std_c_str.c | 272 ++++++++++++++---------------- 1 file changed, 125 insertions(+), 147 deletions(-) diff --git a/tests/std_tests/check_std_c_str.c b/tests/std_tests/check_std_c_str.c index 0b92070b8..1c544b66c 100644 --- a/tests/std_tests/check_std_c_str.c +++ b/tests/std_tests/check_std_c_str.c @@ -1,218 +1,196 @@ #include +#include #include -#include -#include -#include -#include "support.h" +#include "torture.h" #include "std/c_string.h" -START_TEST (check_c_streq_equal) +static void check_c_streq_equal(void **state) { - fail_unless(c_streq("test", "test"), NULL); -} -END_TEST + (void) state; /* unused */ -START_TEST (check_c_streq_not_equal) + assert_true(c_streq("test", "test")); +} + +static void check_c_streq_not_equal(void **state) { - fail_if(c_streq("test", "test2"), NULL); -} -END_TEST + (void) state; /* unused */ -START_TEST (check_c_streq_null) + assert_false(c_streq("test", "test2")); +} + +static void check_c_streq_null(void **state) { - fail_if(c_streq(NULL, "test"), NULL); - fail_if(c_streq("test", NULL), NULL); - fail_if(c_streq(NULL, NULL), NULL); -} -END_TEST + (void) state; /* unused */ - -static Suite *make_std_c_streq_suite(void) { - Suite *s = suite_create("std:string:c_streq"); - - create_case(s, "check_c_streq_equal", check_c_streq_equal); - create_case(s, "check_c_streq_not_equal", check_c_streq_not_equal); - create_case(s, "check_c_streq_null", check_c_streq_null); - - return s; + assert_false(c_streq(NULL, "test")); + assert_false(c_streq("test", NULL)); + assert_false(c_streq(NULL, NULL)); } -START_TEST (check_c_strlist_new) +static void check_c_strlist_new(void **state) { - c_strlist_t *strlist = NULL; + c_strlist_t *strlist = NULL; - strlist = c_strlist_new(42); - fail_if(strlist == NULL, NULL); - fail_unless(strlist->size == 42, NULL); - fail_unless(strlist->count == 0, NULL); + (void) state; /* unused */ - c_strlist_destroy(strlist); + strlist = c_strlist_new(42); + assert_non_null(strlist); + assert_int_equal(strlist->size, 42); + assert_int_equal(strlist->count, 0); + + c_strlist_destroy(strlist); } -END_TEST -START_TEST (check_c_strlist_add) +static void check_c_strlist_add(void **state) { - size_t i = 0; - c_strlist_t *strlist = NULL; + int rc; + size_t i = 0; + c_strlist_t *strlist = NULL; - strlist = c_strlist_new(42); - fail_if(strlist == NULL, NULL); - fail_unless(strlist->size == 42, NULL); - fail_unless(strlist->count == 0, NULL); + (void) state; /* unused */ - for (i = 0; i < strlist->size; i++) { - fail_unless(c_strlist_add(strlist, (char *) "foobar") == 0, NULL); - } + strlist = c_strlist_new(42); + assert_non_null(strlist); + assert_int_equal(strlist->size, 42); + assert_int_equal(strlist->count, 0); - fail_unless(strlist->count == 42, NULL); - fail_unless(strcmp(strlist->vector[0], "foobar") == 0, NULL); - fail_unless(strcmp(strlist->vector[41], "foobar") == 0, NULL); + for (i = 0; i < strlist->size; i++) { + rc = c_strlist_add(strlist, (char *) "foobar"); + assert_int_equal(rc, 0); + } - c_strlist_destroy(strlist); + assert_int_equal(strlist->count, 42); + assert_string_equal(strlist->vector[0], "foobar"); + assert_string_equal(strlist->vector[41], "foobar"); + + c_strlist_destroy(strlist); } -END_TEST -START_TEST (check_c_strlist_expand) +static void check_c_strlist_expand(void **state) { - size_t i = 0; - c_strlist_t *strlist = NULL; + c_strlist_t *strlist; + size_t i = 0; + int rc; - strlist = c_strlist_new(42); - fail_if(strlist == NULL, NULL); - fail_unless(strlist->size == 42, NULL); - fail_unless(strlist->count == 0, NULL); + (void) state; /* unused */ - strlist = c_strlist_expand(strlist, 84); - fail_if(strlist == NULL, NULL); - fail_unless(strlist->size == 84, NULL); + strlist = c_strlist_new(42); + assert_non_null(strlist); + assert_int_equal(strlist->size, 42); + assert_int_equal(strlist->count, 0); - for (i = 0; i < strlist->size; i++) { - fail_unless(c_strlist_add(strlist, (char *) "foobar") == 0, NULL); - } + strlist = c_strlist_expand(strlist, 84); + assert_non_null(strlist); + assert_int_equal(strlist->size, 84); - c_strlist_destroy(strlist); + for (i = 0; i < strlist->size; i++) { + rc = c_strlist_add(strlist, (char *) "foobar"); + assert_int_equal(rc, 0); + } + + c_strlist_destroy(strlist); } -END_TEST -START_TEST (check_c_strreplace) +static void check_c_strreplace(void **state) { - char *str = c_strdup("/home/%(USER)"); + char *str = strdup("/home/%(USER)"); - str = c_strreplace(str, "%(USER)", "csync"); - fail_unless(strcmp(str, "/home/csync") == 0, NULL); + (void) state; /* unused */ - SAFE_FREE(str); + str = c_strreplace(str, "%(USER)", "csync"); + assert_string_equal(str, "/home/csync"); + + free(str); } -END_TEST -START_TEST (check_c_lowercase) +static void check_c_lowercase(void **state) { - char *str; + char *str; - str = c_lowercase("LoWeRcASE"); - fail_unless(strcmp(str, "lowercase") == 0, NULL); + (void) state; /* unused */ - SAFE_FREE(str); + str = c_lowercase("LoWeRcASE"); + assert_string_equal(str, "lowercase"); + + free(str); } -END_TEST -START_TEST (check_c_lowercase_empty) +static void check_c_lowercase_empty(void **state) { - char *str; + char *str; - str = c_lowercase(""); - fail_unless(strcmp(str, "") == 0, NULL); + (void) state; /* unused */ - SAFE_FREE(str); + str = c_lowercase(""); + assert_string_equal(str, ""); + + free(str); } -END_TEST -START_TEST (check_c_lowercase_null) +static void check_c_lowercase_null(void **state) { - char *str; + char *str; - str = c_lowercase(NULL); - fail_unless(str == NULL, NULL); + (void) state; /* unused */ - SAFE_FREE(str); + str = c_lowercase(NULL); + assert_null(str); } -END_TEST -START_TEST (check_c_uppercase) +static void check_c_uppercase(void **state) { - char *str; + char *str; - str = c_uppercase("upperCASE"); - fail_unless(strcmp(str, "UPPERCASE") == 0, NULL); + (void) state; /* unused */ - SAFE_FREE(str); + str = c_uppercase("upperCASE"); + assert_string_equal(str, "UPPERCASE"); + + free(str); } -END_TEST -START_TEST (check_c_uppercase_empty) +static void check_c_uppercase_empty(void **state) { - char *str; + char *str; - str = c_uppercase(""); - fail_unless(strcmp(str, "") == 0, NULL); + (void) state; /* unused */ - SAFE_FREE(str); + str = c_uppercase(""); + assert_string_equal(str, ""); + + free(str); } -END_TEST -START_TEST (check_c_uppercase_null) +static void check_c_uppercase_null(void **state) { - char *str; + char *str; - str = c_uppercase(NULL); - fail_unless(str == NULL, NULL); + (void) state; /* unused */ - SAFE_FREE(str); -} -END_TEST - -static Suite *make_std_c_strlist_suite(void) { - Suite *s = suite_create("std:str:c_stringlist"); - - create_case(s, "check_c_strlist_new", check_c_strlist_new); - create_case(s, "check_c_strlist_add", check_c_strlist_add); - create_case(s, "check_c_strlist_expand", check_c_strlist_expand); - create_case(s, "check_c_strreplace", check_c_strreplace); - create_case(s, "check_c_lowercase", check_c_lowercase); - create_case(s, "check_c_lowercase", check_c_lowercase_empty); - create_case(s, "check_c_lowercase", check_c_lowercase_null); - create_case(s, "check_c_uppercase", check_c_uppercase); - create_case(s, "check_c_uppercase", check_c_uppercase_empty); - create_case(s, "check_c_uppercase", check_c_uppercase_null); - - return s; + str = c_uppercase(NULL); + assert_null(str); } -int main(int argc, char **argv) { - Suite *s = NULL; - Suite *s2 = NULL; - SRunner *sr = NULL; - struct argument_s arguments; - int nf; +int torture_run_tests(void) +{ + const UnitTest tests[] = { + unit_test(check_c_streq_equal), + unit_test(check_c_streq_not_equal), + unit_test(check_c_streq_null), + unit_test(check_c_strlist_new), + unit_test(check_c_strlist_add), + unit_test(check_c_strlist_expand), + unit_test(check_c_strreplace), + unit_test(check_c_lowercase), + unit_test(check_c_lowercase_empty), + unit_test(check_c_lowercase_null), + unit_test(check_c_uppercase), + unit_test(check_c_uppercase_empty), + unit_test(check_c_uppercase_null), + }; - ZERO_STRUCT(arguments); - - cmdline_parse(argc, argv, &arguments); - - s = make_std_c_streq_suite(); - s2 = make_std_c_strlist_suite(); - - sr = srunner_create(s); - if (arguments.nofork) { - srunner_set_fork_status(sr, CK_NOFORK); - } - srunner_add_suite (sr, s2); - srunner_run_all(sr, CK_VERBOSE); - nf = srunner_ntests_failed(sr); - srunner_free(sr); - - return (nf == 0) ? EXIT_SUCCESS : EXIT_FAILURE; + return run_tests(tests); }