1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00

r16316: Convert to new torture UI API.

This commit is contained in:
Jelmer Vernooij 2006-06-16 22:59:40 +00:00 committed by Gerald (Jerry) Carter
parent 0e52a831ed
commit ff87504c41
2 changed files with 58 additions and 63 deletions

View File

@ -23,6 +23,7 @@
#include "includes.h" #include "includes.h"
#include "system/filesys.h" #include "system/filesys.h"
#include "torture/torture.h" #include "torture/torture.h"
#include "torture/ui.h"
#define TEST_FILENAME "utilfile.test" #define TEST_FILENAME "utilfile.test"
#define TEST_LINE1 "This is list line 1..." #define TEST_LINE1 "This is list line 1..."
@ -31,55 +32,49 @@
#define TEST_DATA TEST_LINE1 "\n" TEST_LINE2 "\n" TEST_LINE3 #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; size_t len;
char *data; char *data;
ret = file_save(TEST_FILENAME, TEST_DATA, strlen(TEST_DATA)); torture_assert(test,
if (!ret) file_save(TEST_FILENAME, TEST_DATA, strlen(TEST_DATA)),
return False; "saving file");
data = file_load(TEST_FILENAME, &len, mem_ctx); data = file_load(TEST_FILENAME, &len, test);
if (!data) torture_assert(test, data, "loading file");
return False;
if (len != strlen(TEST_DATA)) torture_assert(test, len == strlen(TEST_DATA), "Length");
return False;
if (memcmp(data, TEST_DATA, len) != 0) torture_assert(test, memcmp(data, TEST_DATA, len) == 0, "Contents");
return False;
unlink(TEST_FILENAME); unlink(TEST_FILENAME);
return True; return True;
} }
static BOOL test_afdgets(TALLOC_CTX *mem_ctx) static BOOL test_afdgets(struct torture_context *test, const void *data)
{ {
int fd; int fd;
char *line; char *line;
if (!file_save(TEST_FILENAME, (const void *)TEST_DATA, strlen(TEST_DATA))) torture_assert(test,
return False; file_save(TEST_FILENAME, (const void *)TEST_DATA,
strlen(TEST_DATA)),
"saving file");
fd = open(TEST_FILENAME, O_RDONLY); fd = open(TEST_FILENAME, O_RDONLY);
if (fd == -1) torture_assert(test, fd != -1, "opening file");
return False;
line = afdgets(fd, mem_ctx, 8); line = afdgets(fd, test, 8);
if (strcmp(line, TEST_LINE1) != 0) torture_assert(test, strcmp(line, TEST_LINE1) == 0, "line 1 mismatch");
return False;
line = afdgets(fd, mem_ctx, 8); line = afdgets(fd, test, 8);
if (strcmp(line, TEST_LINE2) != 0) torture_assert(test, strcmp(line, TEST_LINE2) == 0, "line 2 mismatch");
return False;
line = afdgets(fd, mem_ctx, 8); line = afdgets(fd, test, 8);
if (strcmp(line, TEST_LINE3) != 0) torture_assert(test, strcmp(line, TEST_LINE3) == 0, "line 3 mismatch");
return False;
close(fd); close(fd);
@ -90,13 +85,13 @@ static BOOL test_afdgets(TALLOC_CTX *mem_ctx)
BOOL torture_local_util_file(struct torture_context *torture) BOOL torture_local_util_file(struct torture_context *torture)
{ {
BOOL ret = True; struct torture_suite *suite = torture_suite_create(torture, "util_file");
TALLOC_CTX *mem_ctx = talloc_init("test_util_file");
ret &= test_file_load_save(mem_ctx); torture_suite_add_simple_tcase(suite, "file_load_save",
ret &= test_afdgets(mem_ctx); 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);
} }

View File

@ -22,6 +22,7 @@
#include "includes.h" #include "includes.h"
#include "torture/torture.h" #include "torture/torture.h"
#include "torture/ui.h"
static const char *test_lists_shell_strings[] = { static const char *test_lists_shell_strings[] = {
"", "",
@ -33,38 +34,34 @@ static const char *test_lists_shell_strings[] = {
NULL NULL
}; };
static BOOL test_lists_shell(TALLOC_CTX *mem_ctx) static BOOL test_lists_shell(struct torture_context *test, const void *_data)
{ {
int i; const char *data = _data;
for (i = 0; test_lists_shell_strings[i]; i++) { const char **ret1, **ret2, *tmp;
const char **ret1, **ret2, *tmp; BOOL match = True;
BOOL match = True;
ret1 = str_list_make_shell(mem_ctx, test_lists_shell_strings[i], " "); ret1 = str_list_make_shell(test, data, " ");
tmp = str_list_join_shell(mem_ctx, ret1, ' '); tmp = str_list_join_shell(test, ret1, ' ');
ret2 = str_list_make_shell(mem_ctx, tmp, " "); ret2 = str_list_make_shell(test, 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;
}
}
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; match = False;
break;
}
} }
if (!match) { if (ret1[j] || ret2[j])
printf("str_list_{make,join}_shell: Error double parsing, first run:\n%s\nSecond run: \n%s\n", match = False;
test_lists_shell_strings[i], }
tmp);
return 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; 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 torture_local_util_strlist(struct torture_context *torture)
{ {
BOOL ret = True; struct torture_suite *suite = torture_suite_create(torture, "util_strlist");
TALLOC_CTX *mem_ctx = talloc_init("test_util_strlist"); int i;
ret &= test_lists_shell(mem_ctx); for (i = 0; test_lists_shell_strings[i]; i++) {
talloc_free(mem_ctx); torture_suite_add_simple_tcase(suite,
"lists_shell", test_lists_shell,
&test_lists_shell_strings[i]);
}
return ret; return torture_run_suite(torture, suite);
} }