diff --git a/source/torture/local/util_file.c b/source/torture/local/util_file.c index ead3ab052f9..f6152fe4c0a 100644 --- a/source/torture/local/util_file.c +++ b/source/torture/local/util_file.c @@ -23,6 +23,7 @@ #include "includes.h" #include "system/filesys.h" #include "torture/torture.h" +#include "torture/ui.h" #define TEST_FILENAME "utilfile.test" #define TEST_LINE1 "This is list line 1..." @@ -31,55 +32,49 @@ #define TEST_DATA TEST_LINE1 "\n" TEST_LINE2 "\n" TEST_LINE3 -static BOOL test_file_load_save(TALLOC_CTX *mem_ctx) +static BOOL test_file_load_save(struct torture_context *test, const void *_data) { - BOOL ret; size_t len; char *data; - ret = file_save(TEST_FILENAME, TEST_DATA, strlen(TEST_DATA)); - if (!ret) - return False; + torture_assert(test, + file_save(TEST_FILENAME, TEST_DATA, strlen(TEST_DATA)), + "saving file"); - data = file_load(TEST_FILENAME, &len, mem_ctx); - if (!data) - return False; + data = file_load(TEST_FILENAME, &len, test); + torture_assert(test, data, "loading file"); - if (len != strlen(TEST_DATA)) - return False; + torture_assert(test, len == strlen(TEST_DATA), "Length"); - if (memcmp(data, TEST_DATA, len) != 0) - return False; + torture_assert(test, memcmp(data, TEST_DATA, len) == 0, "Contents"); unlink(TEST_FILENAME); return True; } -static BOOL test_afdgets(TALLOC_CTX *mem_ctx) +static BOOL test_afdgets(struct torture_context *test, const void *data) { int fd; char *line; - if (!file_save(TEST_FILENAME, (const void *)TEST_DATA, strlen(TEST_DATA))) - return False; + torture_assert(test, + file_save(TEST_FILENAME, (const void *)TEST_DATA, + strlen(TEST_DATA)), + "saving file"); fd = open(TEST_FILENAME, O_RDONLY); - if (fd == -1) - return False; + torture_assert(test, fd != -1, "opening file"); - line = afdgets(fd, mem_ctx, 8); - if (strcmp(line, TEST_LINE1) != 0) - return False; + line = afdgets(fd, test, 8); + torture_assert(test, strcmp(line, TEST_LINE1) == 0, "line 1 mismatch"); - line = afdgets(fd, mem_ctx, 8); - if (strcmp(line, TEST_LINE2) != 0) - return False; + line = afdgets(fd, test, 8); + torture_assert(test, strcmp(line, TEST_LINE2) == 0, "line 2 mismatch"); - line = afdgets(fd, mem_ctx, 8); - if (strcmp(line, TEST_LINE3) != 0) - return False; + line = afdgets(fd, test, 8); + torture_assert(test, strcmp(line, TEST_LINE3) == 0, "line 3 mismatch"); close(fd); @@ -90,13 +85,13 @@ static BOOL test_afdgets(TALLOC_CTX *mem_ctx) BOOL torture_local_util_file(struct torture_context *torture) { - BOOL ret = True; - TALLOC_CTX *mem_ctx = talloc_init("test_util_file"); + struct torture_suite *suite = torture_suite_create(torture, "util_file"); - ret &= test_file_load_save(mem_ctx); - ret &= test_afdgets(mem_ctx); + torture_suite_add_simple_tcase(suite, "file_load_save", + test_file_load_save, NULL); - talloc_free(mem_ctx); + torture_suite_add_simple_tcase(suite, "afdgets", + test_afdgets, NULL); - return ret; + return torture_run_suite(torture, suite); } diff --git a/source/torture/local/util_strlist.c b/source/torture/local/util_strlist.c index 78ebcf44fb0..5887c01c6a6 100644 --- a/source/torture/local/util_strlist.c +++ b/source/torture/local/util_strlist.c @@ -22,6 +22,7 @@ #include "includes.h" #include "torture/torture.h" +#include "torture/ui.h" static const char *test_lists_shell_strings[] = { "", @@ -33,38 +34,34 @@ static const char *test_lists_shell_strings[] = { NULL }; -static BOOL test_lists_shell(TALLOC_CTX *mem_ctx) +static BOOL test_lists_shell(struct torture_context *test, const void *_data) { - int i; - for (i = 0; test_lists_shell_strings[i]; i++) { - const char **ret1, **ret2, *tmp; - BOOL match = True; + const char *data = _data; + const char **ret1, **ret2, *tmp; + BOOL match = True; - ret1 = str_list_make_shell(mem_ctx, test_lists_shell_strings[i], " "); - tmp = str_list_join_shell(mem_ctx, ret1, ' '); - ret2 = str_list_make_shell(mem_ctx, tmp, " "); - - if ((ret1 == NULL || ret2 == NULL) && ret2 != ret1) { - match = False; - } else { - int j; - for (j = 0; ret1[j] && ret2[j]; j++) { - if (strcmp(ret1[j], ret2[j]) != 0) { - match = False; - break; - } - } + ret1 = str_list_make_shell(test, data, " "); + tmp = str_list_join_shell(test, ret1, ' '); + ret2 = str_list_make_shell(test, tmp, " "); - if (ret1[j] || ret2[j]) + if ((ret1 == NULL || ret2 == NULL) && ret2 != ret1) { + match = False; + } else { + int j; + for (j = 0; ret1[j] && ret2[j]; j++) { + if (strcmp(ret1[j], ret2[j]) != 0) { match = False; + break; + } } - if (!match) { - printf("str_list_{make,join}_shell: Error double parsing, first run:\n%s\nSecond run: \n%s\n", - test_lists_shell_strings[i], - tmp); - return False; - } + if (ret1[j] || ret2[j]) + match = False; + } + + if (!match) { + torture_fail(test, "str_list_{make,join}_shell: Error double parsing, first run:\n%s\nSecond run: \n%s", data, tmp); + return False; } return True; @@ -72,11 +69,14 @@ static BOOL test_lists_shell(TALLOC_CTX *mem_ctx) BOOL torture_local_util_strlist(struct torture_context *torture) { - BOOL ret = True; - TALLOC_CTX *mem_ctx = talloc_init("test_util_strlist"); + struct torture_suite *suite = torture_suite_create(torture, "util_strlist"); + int i; - ret &= test_lists_shell(mem_ctx); - talloc_free(mem_ctx); + for (i = 0; test_lists_shell_strings[i]; i++) { + torture_suite_add_simple_tcase(suite, + "lists_shell", test_lists_shell, + &test_lists_shell_strings[i]); + } - return ret; + return torture_run_suite(torture, suite); }