selftest/tests: add helper method to simplify plantestsuite
authorJoe Guo <joeg@catalyst.net.nz>
Fri, 15 Feb 2019 09:15:23 +0000 (22:15 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Thu, 21 Feb 2019 03:09:19 +0000 (04:09 +0100)
Signed-off-by: Joe Guo <joeg@catalyst.net.nz>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
selftest/tests.py

index 89e5ff43507ed4c42732538cf8a361b0a0e9cf1b..2d223046a954849587252783c35c0b94e38f3620 100644 (file)
@@ -91,66 +91,85 @@ planpythontestsuite(
     "none", "wafsamba.tests.test_suite",
     extra_path=[os.path.join(samba4srcdir, "..", "buildtools"),
                 os.path.join(samba4srcdir, "..", "third_party", "waf")])
+
+
+def cmdline(script, *args):
+    """
+    Prefix PYTHON env var and append --configurefile option to abs script path.
+
+    script.sh arg1 arg2
+    -->
+    PYTHON=python /path/to/bbdir/script.sh arg1 arg2 \
+    --configurefile $SMB_CONF_FILE
+    """
+    return [
+        "PYTHON=%s" % python,
+        os.path.join(bbdir, script),
+    ] + list(args) + [configuration]
+
+
 plantestsuite(
     "samba4.blackbox.demote-saveddb", "none",
-    ["PYTHON=%s" % python, os.path.join(bbdir, "demote-saveddb.sh"),
-     '$PREFIX_ABS/demote', configuration])
+    cmdline('demote-saveddb.sh', '$PREFIX_ABS/demote'))
+
 plantestsuite(
     "samba4.blackbox.dbcheck.alpha13", "none",
-    ["PYTHON=%s" % python, os.path.join(bbdir, "dbcheck-oldrelease.sh"),
-     '$PREFIX_ABS/provision', 'alpha13', configuration])
+    cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision',
+            'alpha13'))
+
 plantestsuite(
     "samba4.blackbox.dbcheck.release-4-0-0", "none",
-    ["PYTHON=%s" % python, os.path.join(bbdir, "dbcheck-oldrelease.sh"),
-     '$PREFIX_ABS/provision', 'release-4-0-0', configuration])
+    cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision',
+            'release-4-0-0'))
+
 plantestsuite(
     "samba4.blackbox.dbcheck.release-4-1-0rc3", "none",
-    ["PYTHON=%s" % python, os.path.join(bbdir, "dbcheck-oldrelease.sh"),
-     '$PREFIX_ABS/provision', 'release-4-1-0rc3', configuration])
+    cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision',
+            'release-4-1-0rc3'))
+
 plantestsuite(
     "samba4.blackbox.dbcheck.release-4-1-6-partial-object", "none",
-    ["PYTHON=%s" % python, os.path.join(bbdir, "dbcheck-oldrelease.sh"),
-     '$PREFIX_ABS/provision', 'release-4-1-6-partial-object', configuration])
+    cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision',
+            'release-4-1-6-partial-object'))
+
 plantestsuite(
     "samba4.blackbox.dbcheck.release-4-5-0-pre1", "none",
-    ["PYTHON=%s" % python,
-     os.path.join(bbdir, "dbcheck-oldrelease.sh"),
-     '$PREFIX_ABS/provision', 'release-4-5-0-pre1', configuration])
+    cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision',
+            'release-4-5-0-pre1'))
+
 plantestsuite(
     "samba4.blackbox.upgradeprovision.alpha13", "none",
-    ["PYTHON=%s" % python,
-     os.path.join(bbdir, "upgradeprovision-oldrelease.sh"),
-     '$PREFIX_ABS/provision', 'alpha13', configuration])
+    cmdline('upgradeprovision-oldrelease.sh', '$PREFIX_ABS/provision',
+            'alpha13'))
+
 plantestsuite(
     "samba4.blackbox.upgradeprovision.release-4-0-0", "none",
-    ["PYTHON=%s" % python,
-     os.path.join(bbdir, "upgradeprovision-oldrelease.sh"),
-     '$PREFIX_ABS/provision', 'release-4-0-0', configuration])
+    cmdline('upgradeprovision-oldrelease.sh', '$PREFIX_ABS/provision',
+            'release-4-0-0'))
+
 plantestsuite(
     "samba4.blackbox.tombstones-expunge.release-4-5-0-pre1", "none",
-    ["PYTHON=%s" % python,
-     os.path.join(bbdir, "tombstones-expunge.sh"),
-     '$PREFIX_ABS/provision', 'release-4-5-0-pre1', configuration])
+    cmdline('tombstones-expunge.sh', '$PREFIX_ABS/provision',
+            'release-4-5-0-pre1'))
+
 plantestsuite(
     "samba4.blackbox.dbcheck-links.release-4-5-0-pre1", "none",
-    ["PYTHON=%s" % python,
-     os.path.join(bbdir, "dbcheck-links.sh"),
-     '$PREFIX_ABS/provision', 'release-4-5-0-pre1', configuration])
+    cmdline('dbcheck-links.sh', '$PREFIX_ABS/provision',
+            'release-4-5-0-pre1'))
+
 plantestsuite(
     "samba4.blackbox.runtime-links.release-4-5-0-pre1", "none",
-    ["PYTHON=%s" % python,
-     os.path.join(bbdir, "runtime-links.sh"),
-     '$PREFIX_ABS/provision', 'release-4-5-0-pre1', configuration])
+    cmdline('runtime-links.sh', '$PREFIX_ABS/provision',
+            'release-4-5-0-pre1'))
+
 plantestsuite(
     "samba4.blackbox.schemaupgrade", "none",
-    ["PYTHON=%s" % python,
-     os.path.join(bbdir, "schemaupgrade.sh"),
-     '$PREFIX_ABS/provision', configuration])
+    cmdline('schemaupgrade.sh', '$PREFIX_ABS/provision'))
+
 plantestsuite(
     "samba4.blackbox.functionalprep", "none",
-    ["PYTHON=%s" % python,
-     os.path.join(bbdir, "functionalprep.sh"),
-     '$PREFIX_ABS/provision', configuration])
+    cmdline('functionalprep.sh', '$PREFIX_ABS/provision'))
+
 planpythontestsuite("none", "samba.tests.upgradeprovision", py3_compatible=True)
 planpythontestsuite("none", "samba.tests.xattr", py3_compatible=True)
 planpythontestsuite("none", "samba.tests.ntacls", py3_compatible=True)