selftesthelpers: Share code for listing smbtorture4 tests.
[obnox/samba/samba-obnox.git] / selftest / selftesthelpers.py
index 7fc085477d8484f4c0ec7f1dcdfdeca93d24ed17..b22330ae0af1293357a6a5fc0023f56306a5a351 100644 (file)
@@ -177,3 +177,22 @@ def planpythontestsuite(env, module, name=None, extra_path=[]):
     if pypath:
         args.insert(0, "PYTHONPATH=%s" % ":".join(["$PYTHONPATH"] + pypath))
     plantestsuite_idlist(name, env, args)
+
+
+samba4srcdir = source4dir()
+bbdir = os.path.join(srcdir(), "testprogs/blackbox")
+configuration = "--configfile=$SMB_CONF_PATH"
+
+smbtorture4 = binpath("smbtorture4")
+smbtorture4_testsuite_list = subprocess.Popen([smbtorture4, "--list-suites"], stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate("")[0].splitlines()
+
+def plansmbtorture4testsuite(name, env, options, modname=None):
+    if modname is None:
+        modname = "samba4.%s" % name
+    if isinstance(options, list):
+        options = " ".join(options)
+    cmdline = "%s $LISTOPT %s %s" % (valgrindify(smbtorture4), options, name)
+    plantestsuite_loadlist(modname, env, cmdline)
+
+def smbtorture4_testsuites(prefix):
+    return filter(lambda x: x.startswith(prefix), smbtorture4_testsuite_list)