svn commit: samba r19513 - in branches/SAMBA_4_0/source/torture: .
jelmer at samba.org
jelmer at samba.org
Mon Oct 30 11:34:59 GMT 2006
Author: jelmer
Date: 2006-10-30 11:34:59 +0000 (Mon, 30 Oct 2006)
New Revision: 19513
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=19513
Log:
Add support for recipes (using '@')
Modified:
branches/SAMBA_4_0/source/torture/smbtorture.c
Changeset:
Modified: branches/SAMBA_4_0/source/torture/smbtorture.c
===================================================================
--- branches/SAMBA_4_0/source/torture/smbtorture.c 2006-10-30 01:19:31 UTC (rev 19512)
+++ branches/SAMBA_4_0/source/torture/smbtorture.c 2006-10-30 11:34:59 UTC (rev 19513)
@@ -425,6 +425,33 @@
.test_result = quiet_test_result
};
+void run_recipe(struct torture_context *tctx, const char *recipe)
+{
+ int numlines, i, ret;
+ char **lines;
+
+ lines = file_lines_load(recipe, &numlines, NULL);
+ if (lines == NULL) {
+ fprintf(stderr, "Unable to load file %s\n", recipe);
+ return;
+ }
+
+ for (i = 0; i < numlines; i++) {
+ int argc;
+ char **argv;
+
+ ret = poptParseArgvString(lines[i], &argc, &argv);
+ if (ret != 0) {
+ fprintf(stderr, "Error parsing line\n");
+ continue;
+ }
+
+ run_test(tctx, argv[0]);
+ }
+
+ talloc_free(lines);
+}
+
void run_shell(struct torture_context *tctx)
{
char *cline;
@@ -523,7 +550,7 @@
setlinebuf(stdout);
/* we are never interested in SIGPIPE */
- BlockSignals(true,SIGPIPE);
+ BlockSignals(true, SIGPIPE);
pc = poptGetContext("smbtorture", argc, (const char **) argv, long_options,
POPT_CONTEXT_KEEP_FIRST);
@@ -649,7 +676,9 @@
double rate;
int unexpected_failures;
for (i=2;i<argc_new;i++) {
- if (!run_test(torture, argv_new[i])) {
+ if (argv_new[i][0] == '@') {
+ run_recipe(torture, argv_new[i]+1);
+ } else if (!run_test(torture, argv_new[i])) {
correct = false;
}
}
More information about the samba-cvs
mailing list