From 4ebd877ec0447f9ecf44c43e5dce01d895995f9d Mon Sep 17 00:00:00 2001 From: Lumir Balhar Date: Tue, 17 Jan 2017 11:05:44 +0100 Subject: [PATCH] python: selftest: Add possibility to run old Python test suites with Python 3 Add possibility to execute old Python test suites with Python 3 and enable tests with Python 3 of ported samba.gensec module. Signed-off-by: Lumir Balhar Reviewed-by: Andrew Bartlett Reviewed-by: Douglas Bagnall --- selftest/selftesthelpers.py | 4 ++-- source4/selftest/tests.py | 10 ++++++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/selftest/selftesthelpers.py b/selftest/selftesthelpers.py index b0ece36d0f5..6b22a16bfa5 100644 --- a/selftest/selftesthelpers.py +++ b/selftest/selftesthelpers.py @@ -46,7 +46,7 @@ else: has_perl_test_more = False python = os.getenv("PYTHON", "python") -extra_python = os.getenv("EXTRA_PYTHON", "python3") +extra_python = os.getenv("EXTRA_PYTHON", None) tap2subunit = python + " " + os.path.join(srcdir(), "selftest", "tap2subunit") @@ -137,7 +137,7 @@ def planpythontestsuite(env, module, name=None, extra_path=[], py3_compatible=Fa if pypath: args.insert(0, "PYTHONPATH=%s" % ":".join(["$PYTHONPATH"] + pypath)) plantestsuite_loadlist(name, env, args) - if py3_compatible: + if py3_compatible and extra_python is not None: # Plan one more test for Python 3 compatible module args[0] = extra_python plantestsuite_loadlist(name, env, args) diff --git a/source4/selftest/tests.py b/source4/selftest/tests.py index 3786f735dd7..c2c5486d43e 100755 --- a/source4/selftest/tests.py +++ b/source4/selftest/tests.py @@ -537,7 +537,9 @@ for env in ["ad_dc:local", "s4member:local", "nt4_dc:local", "ad_member:local", skiptestsuite("samba.nss.test using winbind(%s)" % env, "nsstest not available") subunitrun = valgrindify(python) + " " + os.path.join(samba4srcdir, "scripting/bin/subunitrun") -def planoldpythontestsuite(env, module, name=None, extra_path=[], environ={}, extra_args=[]): +if extra_python is not None: + subunitrun3 = valgrindify(extra_python) + " " + os.path.join(samba4srcdir, "scripting/bin/subunitrun") +def planoldpythontestsuite(env, module, name=None, extra_path=[], environ={}, extra_args=[], py3_compatible=False): environ = dict(environ) py_path = list(extra_path) if py_path: @@ -548,8 +550,12 @@ def planoldpythontestsuite(env, module, name=None, extra_path=[], environ={}, ex if name is None: name = module plantestsuite_loadlist(name, env, args) + if py3_compatible and extra_python is not None: + args[0] = subunitrun3 + plantestsuite_loadlist(name, env, args) -planoldpythontestsuite("ad_dc_ntvfs:local", "samba.tests.gensec", extra_args=['-U"$USERNAME%$PASSWORD"']) + +planoldpythontestsuite("ad_dc_ntvfs:local", "samba.tests.gensec", extra_args=['-U"$USERNAME%$PASSWORD"'], py3_compatible=True) planoldpythontestsuite("none", "simple", extra_path=["%s/lib/tdb/python/tests" % srcdir()], name="tdb.python") planpythontestsuite("ad_dc_ntvfs:local", "samba.tests.dcerpc.sam") planpythontestsuite("ad_dc_ntvfs:local", "samba.tests.dsdb")