diff options
-rwxr-xr-x | source4/script/tests/test_posix.sh | 27 | ||||
-rw-r--r-- | source4/torture/smbtorture.c | 26 |
2 files changed, 26 insertions, 27 deletions
diff --git a/source4/script/tests/test_posix.sh b/source4/script/tests/test_posix.sh index 81e7268c2d..e8a8ef3f6e 100755 --- a/source4/script/tests/test_posix.sh +++ b/source4/script/tests/test_posix.sh @@ -20,32 +20,7 @@ ADDARGS="$*" incdir=`dirname $0` . $incdir/test_functions.sh -# -# please don't remove tests here, when you want them to be skipped! -# just add them to the skipped line below -# this should be the complete list smbtorture offers as BASE-* tests -# -base="BASE-ATTR BASE-CHARSET BASE-CHKPATH BASE-DEFER_OPEN BASE-DELAYWRITE BASE-DELETE" -base="$base BASE-DENY1 BASE-DENY2 BASE-DENY3 BASE-DENYDOS BASE-DIR1 BASE-DIR2" -base="$base BASE-DISCONNECT BASE-FDPASS BASE-LOCK " -base="$base BASE-MANGLE BASE-NEGNOWAIT BASE-NTDENY1" -base="$base BASE-NTDENY2 BASE-OPEN BASE-OPENATTR BASE-PROPERTIES BASE-RENAME BASE-RW1" -base="$base BASE-SECLEAK BASE-TCON BASE-TCONDEV BASE-TRANS2 BASE-UNLINK BASE-VUID" -base="$base BASE-XCOPY" - -# -# please don't remove tests here, when you want them to be skipped! -# just add them to the skipped line below -# this should be the complete list smbtorture offers as RAW-* tests -# -raw="RAW-CHKPATH RAW-CLOSE RAW-COMPOSITE RAW-CONTEXT RAW-EAS" -raw="$raw RAW-IOCTL RAW-LOCK RAW-MKDIR RAW-MUX RAW-NOTIFY RAW-OPEN RAW-OPLOCK" -raw="$raw RAW-QFILEINFO RAW-QFSINFO RAW-READ RAW-RENAME RAW-SEARCH RAW-SEEK" -raw="$raw RAW-SFILEINFO RAW-SFILEINFO-BUG RAW-STREAMS RAW-UNLINK RAW-WRITE" - -smb2="SMB2-CONNECT SMB2-GETINFO SMB2-SETINFO SMB2-FIND" - -tests="$base $raw $smb2" +tests=`bin/smbtorture --list | grep "^(BASE|RAW|SMB2)-" | xargs` # # please add tests you want to be skipped here! diff --git a/source4/torture/smbtorture.c b/source4/torture/smbtorture.c index 018c7260af..016f3e603e 100644 --- a/source4/torture/smbtorture.c +++ b/source4/torture/smbtorture.c @@ -163,6 +163,23 @@ static void parse_dns(const char *dns) } +static void print_test_list(void) +{ + struct torture_suite *o; + struct torture_suite *s; + struct torture_tcase *t; + + for (o = torture_root->children; o; o = o->next) { + for (s = o->children; s; s = s->next) { + printf("%s-%s\n", o->name, s->name); + } + + for (t = o->testcases; t; t = t->next) { + printf("%s-%s\n", o->name, t->name); + } + } +} + static void usage(poptContext pc) { struct torture_suite *o; @@ -487,7 +504,8 @@ int main(int argc,char *argv[]) NTSTATUS status; int shell = False; static const char *ui_ops_name = "simple"; - enum {OPT_LOADFILE=1000,OPT_UNCLIST,OPT_TIMELIMIT,OPT_DNS, + static int list_tests = 0; + enum {OPT_LOADFILE=1000,OPT_UNCLIST,OPT_TIMELIMIT,OPT_DNS, OPT_LIST, OPT_DANGEROUS,OPT_SMB_PORTS,OPT_ASYNC,OPT_NUMPROGS, OPT_BASEDIR}; struct poptOption long_options[] = { @@ -500,6 +518,7 @@ int main(int argc,char *argv[]) {"num-ops", 0, POPT_ARG_INT, &torture_numops, 0, "num ops", NULL}, {"entries", 0, POPT_ARG_INT, &torture_entries, 0, "entries", NULL}, {"loadfile", 0, POPT_ARG_STRING, NULL, OPT_LOADFILE, "loadfile", NULL}, + {"list", 0, POPT_ARG_NONE, &list_tests, 0, NULL, NULL }, {"unclist", 0, POPT_ARG_STRING, NULL, OPT_UNCLIST, "unclist", NULL}, {"timelimit", 't', POPT_ARG_INT, NULL, OPT_TIMELIMIT, "timelimit", NULL}, {"failures", 'f', POPT_ARG_INT, &torture_failures, 0, "failures", NULL}, @@ -584,6 +603,11 @@ int main(int argc,char *argv[]) torture_init(); ldb_global_init(); + if (list_tests) { + print_test_list(); + return 0; + } + subunit_dir = lp_parm_string_list(-1, "torture", "subunitdir", ":"); if (subunit_dir == NULL) torture_subunit_load_testsuites(dyn_TORTUREDIR, true, NULL); |