The branch, master has been updated via 1326992 selftesthelpers: Fix detection of tap2subunit. via 8d397b6 TestCaseInTempDir: Use addCleanup rather than tearDown. via 67dd28f selftest: Add --random-order option. via 1190f38 source4.selftest.tests: Add FIXME about database verification. via 05dc5a3 selftesthelpers: Simplify detection of tap2subunit. via fd607e0 source3.selftests.tests: Use common plansmbtorture4testsuite() function. via efb27e2 source3.selftest.tests: Add suffix for smbclient3/ntlm_auth3. via a841f0f source3.selftest.tests: Remove tabs. via ea5e2b5 source4.selftest.tests: Add suffix for smbclient4/nmblookup4. via 5834582 selftesthelpers: Add function for printing smbtorture4 version. via 8237e27 selftest: Move determining of smbtorture4 options to selftesthelpers. via fcb7926 selftest/selftesthelpers: Share environment handling for extra smbtorture options. via 6bcb256 selftest/selftesthelpers.py: Share configuration variable, strip whitespace. via 4c4d3c8 selftesthelpers: Share code for listing smbtorture4 tests. via 868c8c0 source4.selftest.tests: Rename plansmbtorturesuite() to plansmbtorture4suite(). via 55507d0 source4.selftest.tests: Consistent naming of smbtorture binary. from 2b4672f libcli/smb: fix unitialized padding in smb2_create_blob_push_one() (bug #9209)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 13269923585888912e2433c15c0ca010a9897595 Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 17:31:40 2012 -0800 selftesthelpers: Fix detection of tap2subunit. Autobuild-User(master): Jelmer Vernooij <jel...@samba.org> Autobuild-Date(master): Sat Oct 27 16:57:49 CEST 2012 on sn-devel-104 commit 8d397b69bb29b7a464b610bc46cedd6be01b2455 Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 15:58:06 2012 -0800 TestCaseInTempDir: Use addCleanup rather than tearDown. commit 67dd28f3605db4cbdc5feacc1121ec3d7dd075a6 Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 15:53:57 2012 -0800 selftest: Add --random-order option. commit 1190f385f72f68f22277c8b380f2d4c461c413a4 Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 14:40:09 2012 -0800 source4.selftest.tests: Add FIXME about database verification. commit 05dc5a39a6ad4b1ffafc904faea3e8e40f6f5cde Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 14:14:42 2012 -0800 selftesthelpers: Simplify detection of tap2subunit. commit fd607e0a9eefb79130941e244435980afbbb4bf7 Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 14:06:47 2012 -0800 source3.selftests.tests: Use common plansmbtorture4testsuite() function. commit efb27e29dadf58d2dec651ca3a0c108b4cf515ae Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 14:00:07 2012 -0800 source3.selftest.tests: Add suffix for smbclient3/ntlm_auth3. commit a841f0fced7abfb0f6d98390c07becdf49a91af5 Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 13:56:30 2012 -0800 source3.selftest.tests: Remove tabs. commit ea5e2b56c14072eeaa785d05f1da4d439667e8b6 Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 13:52:55 2012 -0800 source4.selftest.tests: Add suffix for smbclient4/nmblookup4. commit 58345820c078f79fe7f67b8e6f947691f7237641 Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 13:51:54 2012 -0800 selftesthelpers: Add function for printing smbtorture4 version. commit 8237e2727da0d04b82cb3cf644dd337a4c77fe34 Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 13:38:32 2012 -0800 selftest: Move determining of smbtorture4 options to selftesthelpers. commit fcb7926ce544a8d4b0e5aa6577fe21712b38bb53 Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 13:12:54 2012 -0800 selftest/selftesthelpers: Share environment handling for extra smbtorture options. commit 6bcb25673bdc249f5a49ded912d90bc84b13809d Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 13:09:45 2012 -0800 selftest/selftesthelpers.py: Share configuration variable, strip whitespace. commit 4c4d3c86f0430d38f78d16dcb5d365b577ef4227 Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 13:03:32 2012 -0800 selftesthelpers: Share code for listing smbtorture4 tests. commit 868c8c058306b66fb3baa4a36bfe91d6461805d5 Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 11:51:19 2012 -0800 source4.selftest.tests: Rename plansmbtorturesuite() to plansmbtorture4suite(). commit 55507d0612ecf2db34867eb6065fc5038ea81aa0 Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Oct 26 11:50:41 2012 -0800 source4.selftest.tests: Consistent naming of smbtorture binary. ----------------------------------------------------------------------- Summary of changes: selftest/selftest.pl | 10 +- selftest/selftesthelpers.py | 58 +++++- selftest/wscript | 4 + source3/selftest/tests.py | 240 ++++++++++------------ source4/scripting/python/samba/tests/__init__.py | 5 +- source4/selftest/tests.py | 221 +++++++++----------- 6 files changed, 282 insertions(+), 256 deletions(-) Changeset truncated at 500 lines: diff --git a/selftest/selftest.pl b/selftest/selftest.pl index b50853e..ffb6149 100755 --- a/selftest/selftest.pl +++ b/selftest/selftest.pl @@ -42,6 +42,7 @@ my $opt_quick = 0; my $opt_socket_wrapper = 0; my $opt_socket_wrapper_pcap = undef; my $opt_socket_wrapper_keep_pcap = undef; +my $opt_random_order = 0; my $opt_one = 0; my @opt_exclude = (); my @opt_include = (); @@ -236,8 +237,9 @@ my $result = GetOptions ( 'ldap:s' => \$ldap, 'resetup-environment' => \$opt_resetup_env, 'testlist=s' => \@testlists, + 'random-order' => \$opt_random_order, 'load-list=s' => \$opt_load_list, - 'binary-mapping=s' => \$opt_binary_mapping + 'binary-mapping=s' => \$opt_binary_mapping ); exit(1) if (not $result); @@ -825,6 +827,12 @@ sub teardown_env($) # This 'global' file needs to be empty when we start unlink("$prefix_abs/dns_host_file"); +if ($opt_random_order) { + require List::Util; + my @newtodo = List::Util::shuffle(@todo); + @todo = @newtodo; +} + if ($opt_testenv) { my $testenv_name = $ENV{SELFTEST_TESTENV}; $testenv_name = $testenv_default unless defined($testenv_name); diff --git a/selftest/selftesthelpers.py b/selftest/selftesthelpers.py index 4517030..8d36356 100644 --- a/selftest/selftesthelpers.py +++ b/selftest/selftesthelpers.py @@ -18,6 +18,7 @@ # three separated by newlines. All other lines in the output are considered # comments. +import errno import os import subprocess import sys @@ -64,15 +65,17 @@ else: python = os.getenv("PYTHON", "python") -#Set a default value, overridden if we find a working one on the system +# Set a default value, overridden if we find a working one on the system tap2subunit = "PYTHONPATH=%s/lib/subunit/python:%s/lib/testtools %s %s/lib/subunit/filters/tap2subunit" % (srcdir(), srcdir(), python, srcdir()) -sub = subprocess.Popen("tap2subunit 2> /dev/null", stdout=subprocess.PIPE, stdin=subprocess.PIPE, shell=True) +sub = subprocess.Popen("tap2subunit", stdin=subprocess.PIPE, + stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True) sub.communicate("") if sub.returncode == 0: - cmd = "echo -ne \"1..1\nok 1 # skip doesn't seem to work yet\n\" | tap2subunit 2> /dev/null | grep skip" - sub = subprocess.Popen(cmd, stdout=subprocess.PIPE, stdin=subprocess.PIPE, stderr=subprocess.PIPE, shell=True) + cmd = "echo -ne \"1..1\nok 1 # skip doesn't seem to work yet\n\" | tap2subunit | grep skip" + sub = subprocess.Popen(cmd, stdout=subprocess.PIPE, stdin=subprocess.PIPE, + stderr=subprocess.PIPE, shell=True) if sub.returncode == 0: tap2subunit = "tap2subunit" @@ -179,7 +182,54 @@ def planpythontestsuite(env, module, name=None, extra_path=[]): plantestsuite_idlist(name, env, args) +def get_env_torture_options(): + ret = [] + if not os.getenv("SELFTEST_VERBOSE"): + ret.append("--option=torture:progress=no") + if os.getenv("SELFTEST_QUICK"): + ret.append("--option=torture:quick=yes") + return ret + + 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() + +smbtorture4_options = [ + configuration, + "--maximum-runtime=$SELFTEST_MAXTIME", + "--basedir=$SELFTEST_TMPDIR", + "--format=subunit" + ] + get_env_torture_options() + + +def print_smbtorture4_version(): + """Print the version of Samba smbtorture4 comes from. + + :return: Whether smbtorture4 was successfully run + """ + try: + sub = subprocess.Popen([smbtorture4, "-V"], stdout=sys.stderr) + except OSError, e: + if e.errno == errno.ENOENT: + return False + raise + sub.communicate("") + return (sub.returncode == 0) + + +def plansmbtorture4testsuite(name, env, options, target, modname=None): + if modname is None: + modname = "samba4.%s" % name + if isinstance(options, list): + options = " ".join(options) + options = " ".join(smbtorture4_options + ["--target=%s" % target]) + " " + 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) diff --git a/selftest/wscript b/selftest/wscript index 9ea2f6f..a5b2e53 100644 --- a/selftest/wscript +++ b/selftest/wscript @@ -69,6 +69,8 @@ def set_options(opt): gr.add_option('--socket-wrapper-keep-pcap', help=("create a pcap file for all individual test"), action="store_true", dest='SOCKET_WRAPPER_KEEP_PCAP', default=False) + gr.add_option('--random-order', dest='RANDOM_ORDER', default=False, + action="store_true", help="Run testsuites in random order") def configure(conf): conf.env.SELFTEST_PREFIX = Options.options.SELFTEST_PREFIX @@ -134,6 +136,8 @@ def cmd_testonly(opt): env.OPTIONS += ' --socket-wrapper-pcap' if Options.options.SOCKET_WRAPPER_KEEP_PCAP: env.OPTIONS += ' --socket-wrapper-keep-pcap' + if Options.options.RANDOM_ORDER: + env.OPTIONS += ' --random-order' if os.environ.get('RUN_FROM_BUILD_FARM') is not None: env.FILTER_OPTIONS = '${FILTER_XFAIL} --strip-passed-output' else: diff --git a/source3/selftest/tests.py b/source3/selftest/tests.py index 7168bfd..777a882 100755 --- a/source3/selftest/tests.py +++ b/source3/selftest/tests.py @@ -1,75 +1,58 @@ #!/usr/bin/python -# This script generates a list of testsuites that should be run as part of +# This script generates a list of testsuites that should be run as part of # the Samba 3 test suite. -# The output of this script is parsed by selftest.pl, which then decides -# which of the tests to actually run. It will, for example, skip all tests +# The output of this script is parsed by selftest.pl, which then decides +# which of the tests to actually run. It will, for example, skip all tests # listed in selftest/skip or only run a subset during "make quicktest". -# The idea is that this script outputs all of the tests of Samba 3, not -# just those that are known to pass, and list those that should be skipped -# or are known to fail in selftest/skip or selftest/samba3-knownfail. This makes it -# very easy to see what functionality is still missing in Samba 3 and makes -# it possible to run the testsuite against other servers, such as Samba 4 or +# The idea is that this script outputs all of the tests of Samba 3, not +# just those that are known to pass, and list those that should be skipped +# or are known to fail in selftest/skip or selftest/samba3-knownfail. This makes it +# very easy to see what functionality is still missing in Samba 3 and makes +# it possible to run the testsuite against other servers, such as Samba 4 or # Windows that have a different set of features. -# The syntax for a testsuite is "-- TEST --" on a single line, followed -# by the name of the test, the environment it needs and the command to run, all -# three separated by newlines. All other lines in the output are considered +# The syntax for a testsuite is "-- TEST --" on a single line, followed +# by the name of the test, the environment it needs and the command to run, all +# three separated by newlines. All other lines in the output are considered # comments. import os, sys sys.path.insert(0, os.path.normpath(os.path.join(os.path.dirname(__file__), "../../selftest"))) +import selftesthelpers from selftesthelpers import * -import subprocess -smb4torture = binpath("smbtorture4") samba3srcdir = srcdir() + "/source3" -configuration = "--configfile=$SMB_CONF_PATH" -scriptdir=os.path.join(samba3srcdir, "../script/tests") +scriptdir = os.path.join(samba3srcdir, "../script/tests") -smbclient = binpath('smbclient3') +smbclient3 = binpath('smbclient3') wbinfo = binpath('wbinfo') net = binpath('net') smbtorture3 = binpath('smbtorture3') -ntlm_auth = binpath('ntlm_auth3') +ntlm_auth3 = binpath('ntlm_auth3') dbwrap_tool = binpath('dbwrap_tool') vfstest = binpath('vfstest') -torture_options = [configuration, "--maximum-runtime=$SELFTEST_MAXTIME", - "--basedir=$SELFTEST_TMPDIR", - '--option="torture:winbindd_netbios_name=$SERVER"', - '--option="torture:winbindd_netbios_domain=$DOMAIN"', - '--option=torture:sharedelay=100000', - '--option=torture:writetimeupdatedelay=500000' ] +smbtorture4_options.extend([ + '--option="torture:winbindd_netbios_name=$SERVER"', + '--option="torture:winbindd_netbios_domain=$DOMAIN"', + '--option=torture:sharedelay=100000', + '--option=torture:writetimeupdatedelay=500000', + ]) -if not os.getenv("SELFTEST_VERBOSE"): - torture_options.append("--option=torture:progress=no") -torture_options.append("--format=subunit") -if os.getenv("SELFTEST_QUICK"): - torture_options.append("--option=torture:quick=yes") +smbtorture4_possible = print_smbtorture4_version() -smb4torture_testsuite_list = subprocess.Popen([smb4torture, "--list-suites"], stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate("")[0].splitlines() - -smb4torture += " " + " ".join(torture_options) - -sub = subprocess.Popen("%s --version 2> /dev/null" % smb4torture, stdout=subprocess.PIPE, stdin=subprocess.PIPE, shell=True) -sub.communicate("") -smb4torture_possible = (sub.returncode == 0) - - -def smb4torture_testsuites(prefix): - return filter(lambda x: x.startswith(prefix), smb4torture_testsuite_list) - -def plansmbtorturetestsuite(name, env, options, description=''): - target = "samba3" +def plansmbtorture4testsuite(name, env, options, description=''): if description == '': - modname = "%s.%s" % (target, name) + modname = "samba3.%s" % (name, ) else: - modname = "%s.%s %s" % (target, name, description) + modname = "samba3.%s %s" % (name, description) - cmdline = "%s $LISTOPT %s --target=%s %s" % (valgrindify(smb4torture), options, target, name) - if smb4torture_possible: - plantestsuite_loadlist(modname, env, cmdline) + if smbtorture4_possible: + selftesthelpers.plansmbtorture4testsuite( + name, env, options, target='samba3', modname=modname) + else: + skiptestsuite(name, "smbtorture4 is not available") plantestsuite("samba3.blackbox.success", "s3dc:local", [os.path.join(samba3srcdir, "script/tests/test_success.sh")]) @@ -118,24 +101,24 @@ t = "CLEANUP3" plantestsuite("samba3.smbtorture_s3.plain(%s).%s" % (env, t), env, [os.path.join(samba3srcdir, "script/tests/test_smbtorture_s3.sh"), t, '//$SERVER_IP/tmp', '$USERNAME', '$PASSWORD', binpath('smbtorture3'), "", "-l $LOCAL_PATH"]) local_tests=[ - "LOCAL-SUBSTITUTE", - "LOCAL-GENCACHE", - "LOCAL-TALLOC-DICT", - "LOCAL-BASE64", - "LOCAL-RBTREE", - "LOCAL-MEMCACHE", - "LOCAL-STREAM-NAME", - "LOCAL-WBCLIENT", - "LOCAL-string_to_sid", - "LOCAL-binary_to_sid", - "LOCAL-DBTRANS", - "LOCAL-TEVENT-SELECT", - "LOCAL-CONVERT-STRING", - "LOCAL-CONV-AUTH-INFO", - "LOCAL-IDMAP-TDB-COMMON", - "LOCAL-hex_encode_buf", - "LOCAL-sprintf_append", - "LOCAL-remove_duplicate_addrs2"] + "LOCAL-SUBSTITUTE", + "LOCAL-GENCACHE", + "LOCAL-TALLOC-DICT", + "LOCAL-BASE64", + "LOCAL-RBTREE", + "LOCAL-MEMCACHE", + "LOCAL-STREAM-NAME", + "LOCAL-WBCLIENT", + "LOCAL-string_to_sid", + "LOCAL-binary_to_sid", + "LOCAL-DBTRANS", + "LOCAL-TEVENT-SELECT", + "LOCAL-CONVERT-STRING", + "LOCAL-CONV-AUTH-INFO", + "LOCAL-IDMAP-TDB-COMMON", + "LOCAL-hex_encode_buf", + "LOCAL-sprintf_append", + "LOCAL-remove_duplicate_addrs2"] for t in local_tests: plantestsuite("samba3.smbtorture_s3.%s" % t, "s3dc", [os.path.join(samba3srcdir, "script/tests/test_smbtorture_s3.sh"), t, '//$SERVER_IP/tmp', '$USERNAME', '$PASSWORD', smbtorture3, "-e"]) @@ -169,14 +152,14 @@ plantestsuite("samba.vfstest.acl", "s3dc:local", [os.path.join(samba3srcdir, "sc for options in ["--option=clientusespnego=no", " --option=clientntlmv2auth=no --option=clientlanmanauth=yes --max-protocol=LANMAN2", ""]: env = "s3dc" - plantestsuite("samba3.blackbox.smbclient_auth.plain (%s) %s" % (env, options), env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD', smbclient, configuration, options]) + plantestsuite("samba3.blackbox.smbclient_auth.plain (%s) %s" % (env, options), env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD', smbclient3, configuration, options]) for env in ["s3dc", "member", "s3member", "dc", "s4member"]: - plantestsuite("samba3.blackbox.smbclient_machine_auth.plain (%s:local)" % env, "%s:local" % env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_machine_auth.sh"), '$SERVER', smbclient, configuration]) + plantestsuite("samba3.blackbox.smbclient_machine_auth.plain (%s:local)" % env, "%s:local" % env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_machine_auth.sh"), '$SERVER', smbclient3, configuration]) for env in ["s3dc", "member", "s3member"]: - plantestsuite("samba3.blackbox.smbclient_auth.plain (%s)" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD', smbclient, configuration]) - plantestsuite("samba3.blackbox.smbclient_auth.plain (%s) member creds" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$SERVER\\\\$USERNAME', '$PASSWORD', smbclient, configuration]) + plantestsuite("samba3.blackbox.smbclient_auth.plain (%s)" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$DC_USERNAME', '$DC_PASSWORD', smbclient3, configuration]) + plantestsuite("samba3.blackbox.smbclient_auth.plain (%s) member creds" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$SERVER\\\\$USERNAME', '$PASSWORD', smbclient3, configuration]) for t in tests: plantestsuite("samba3.wbinfo_s3.(%s:local).%s" % (env, t), "%s:local" % env, [os.path.join(samba3srcdir, "script/tests/test_wbinfo_s3.sh"), t]) @@ -184,47 +167,47 @@ for env in ["s3dc", "member", "s3member"]: plantestsuite( "samba3.wbinfo_sids2xids.(%s:local)" % env, "%s:local" % env, [os.path.join(samba3srcdir, "script/tests/test_wbinfo_sids2xids.sh")]) - + plantestsuite( "samba3.ntlm_auth.diagnostics(%s:local)" % env, "%s:local" % env, - [os.path.join(samba3srcdir, "script/tests/test_ntlm_auth_diagnostics.sh"), ntlm_auth, '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', configuration]) + [os.path.join(samba3srcdir, "script/tests/test_ntlm_auth_diagnostics.sh"), ntlm_auth3, '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', configuration]) - plantestsuite("samba3.ntlm_auth.(%s:local)" % env, "%s:local" % env, [os.path.join(samba3srcdir, "script/tests/test_ntlm_auth_s3.sh"), valgrindify(python), samba3srcdir, ntlm_auth, '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', configuration]) + plantestsuite("samba3.ntlm_auth.(%s:local)" % env, "%s:local" % env, [os.path.join(samba3srcdir, "script/tests/test_ntlm_auth_s3.sh"), valgrindify(python), samba3srcdir, ntlm_auth3, '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', configuration]) env = "s3member" t = "--krb5auth=$DOMAIN\\\\$DC_USERNAME%$DC_PASSWORD" plantestsuite("samba3.wbinfo_s3.(%s:local).%s" % (env, t), "%s:local" % env, [os.path.join(samba3srcdir, "script/tests/test_wbinfo_s3.sh"), t]) -plantestsuite("samba3.ntlm_auth.krb5(ktest:local) old ccache", "ktest:local", [os.path.join(samba3srcdir, "script/tests/test_ntlm_auth_krb5.sh"), valgrindify(python), samba3srcdir, ntlm_auth, '$PREFIX/ktest/krb5_ccache-2', '$SERVER', configuration]) +plantestsuite("samba3.ntlm_auth.krb5(ktest:local) old ccache", "ktest:local", [os.path.join(samba3srcdir, "script/tests/test_ntlm_auth_krb5.sh"), valgrindify(python), samba3srcdir, ntlm_auth3, '$PREFIX/ktest/krb5_ccache-2', '$SERVER', configuration]) -plantestsuite("samba3.ntlm_auth.krb5(ktest:local)", "ktest:local", [os.path.join(samba3srcdir, "script/tests/test_ntlm_auth_krb5.sh"), valgrindify(python), samba3srcdir, ntlm_auth, '$PREFIX/ktest/krb5_ccache-3', '$SERVER', configuration]) +plantestsuite("samba3.ntlm_auth.krb5(ktest:local)", "ktest:local", [os.path.join(samba3srcdir, "script/tests/test_ntlm_auth_krb5.sh"), valgrindify(python), samba3srcdir, ntlm_auth3, '$PREFIX/ktest/krb5_ccache-3', '$SERVER', configuration]) for env in ["maptoguest", "simpleserver"]: - plantestsuite("samba3.blackbox.smbclient_auth.plain (%s) local creds" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$USERNAME', '$PASSWORD', smbclient, configuration + " --option=clientntlmv2auth=no --option=clientlanmanauth=yes"]) + plantestsuite("samba3.blackbox.smbclient_auth.plain (%s) local creds" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', '$USERNAME', '$PASSWORD', smbclient3, configuration + " --option=clientntlmv2auth=no --option=clientlanmanauth=yes"]) env = "maptoguest" -plantestsuite("samba3.blackbox.smbclient_auth.plain (%s) bad username" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', 'notmy$USERNAME', '$PASSWORD', smbclient, configuration + " --option=clientntlmv2auth=no --option=clientlanmanauth=yes"]) +plantestsuite("samba3.blackbox.smbclient_auth.plain (%s) bad username" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_auth.sh"), '$SERVER', '$SERVER_IP', 'notmy$USERNAME', '$PASSWORD', smbclient3, configuration + " --option=clientntlmv2auth=no --option=clientlanmanauth=yes"]) # plain for env in ["s3dc"]: - plantestsuite("samba3.blackbox.smbclient_s3.plain (%s)" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient, wbinfo, configuration]) + plantestsuite("samba3.blackbox.smbclient_s3.plain (%s)" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3, wbinfo, configuration]) for env in ["member", "s3member"]: - plantestsuite("samba3.blackbox.smbclient_s3.plain (%s) member creds" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$SERVER', '$SERVER\\\\$USERNAME', '$PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient, wbinfo, configuration]) + plantestsuite("samba3.blackbox.smbclient_s3.plain (%s) member creds" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$SERVER', '$SERVER\\\\$USERNAME', '$PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3, wbinfo, configuration]) for env in ["s3dc"]: - plantestsuite("samba3.blackbox.smbclient_s3.sign (%s)" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient, wbinfo, configuration, "--signing=required"]) + plantestsuite("samba3.blackbox.smbclient_s3.sign (%s)" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$DC_USERNAME', '$DC_PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3, wbinfo, configuration, "--signing=required"]) for env in ["member", "s3member"]: - plantestsuite("samba3.blackbox.smbclient_s3.sign (%s) member creds" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$SERVER', '$SERVER\\\\$USERNAME', '$PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient, wbinfo, configuration, "--signing=required"]) + plantestsuite("samba3.blackbox.smbclient_s3.sign (%s) member creds" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$SERVER', '$SERVER\\\\$USERNAME', '$PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3, wbinfo, configuration, "--signing=required"]) for env in ["s3dc"]: # encrypted - plantestsuite("samba3.blackbox.smbclient_s3.crypt (%s)" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$USERNAME', '$PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient, wbinfo, configuration, "-e"]) + plantestsuite("samba3.blackbox.smbclient_s3.crypt (%s)" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_s3.sh"), '$SERVER', '$SERVER_IP', '$DOMAIN', '$USERNAME', '$PASSWORD', '$USERID', '$LOCAL_PATH', '$PREFIX', smbclient3, wbinfo, configuration, "-e"]) # Test smbclient/tarmode - plantestsuite("samba3.blackbox.smbclient_tarmode (%s)" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_tarmode.sh"), '$SERVER', '$SERVER_IP', '$USERNAME', '$PASSWORD', '$LOCAL_PATH', '$PREFIX', smbclient, configuration]) + plantestsuite("samba3.blackbox.smbclient_tarmode (%s)" % env, env, [os.path.join(samba3srcdir, "script/tests/test_smbclient_tarmode.sh"), '$SERVER', '$SERVER_IP', '$USERNAME', '$PASSWORD', '$LOCAL_PATH', '$PREFIX', smbclient3, configuration]) #TODO encrypted against member, with member creds, and with DC creds plantestsuite("samba3.blackbox.net.misc", "s3dc:local", @@ -283,7 +266,7 @@ raw = ["raw.acls", "raw.chkpath", "raw.close", "raw.composite", "raw.context", " "raw.bench-oplock", "raw.bench-lock", "raw.bench-open", "raw.bench-tcon", "raw.samba3checkfsp", "raw.samba3closeerr", "raw.samba3oplocklogoff", "raw.samba3badnameblob"] -smb2 = smb4torture_testsuites("smb2.") +smb2 = smbtorture4_testsuites("smb2.") rpc = ["rpc.authcontext", "rpc.samba3.bind", "rpc.samba3.srvsvc", "rpc.samba3.sharesec", "rpc.samba3.spoolss", "rpc.samba3.wkssvc", "rpc.samba3.winreg", @@ -318,49 +301,49 @@ tests= base + raw + smb2 + rpc + unix + local + winbind + rap + nbt + libsmbclie for t in tests: if t == "base.delaywrite": - plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --maximum-runtime=900') - plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --maximum-runtime=900') + plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --maximum-runtime=900') + plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --maximum-runtime=900') elif t == "rap.sam": - plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=doscharset=ISO-8859-1') - plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=doscharset=ISO-8859-1') + plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=doscharset=ISO-8859-1') + plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD --option=doscharset=ISO-8859-1') elif t == "winbind.pac": - plansmbtorturetestsuite(t, "s3member:local", '//$SERVER/tmp --realm=$REALM --machine-pass --option=torture:addc=$DC_SERVER', description="machine account") + plansmbtorture4testsuite(t, "s3member:local", '//$SERVER/tmp --realm=$REALM --machine-pass --option=torture:addc=$DC_SERVER', description="machine account") elif t == "unix.whoami": - plansmbtorturetestsuite(t, "member:local", '//$SERVER/tmp --machine-pass', description="machine account") - plansmbtorturetestsuite(t, "s3member:local", '//$SERVER/tmp --machine-pass --option=torture:addc=$DC_SERVER', description="machine account") + plansmbtorture4testsuite(t, "member:local", '//$SERVER/tmp --machine-pass', description="machine account") + plansmbtorture4testsuite(t, "s3member:local", '//$SERVER/tmp --machine-pass --option=torture:addc=$DC_SERVER', description="machine account") for env in ["s3dc", "member"]: - plansmbtorturetestsuite(t, env, '//$SERVER/tmp -U$DC_USERNAME%$DC_PASSWORD') - plansmbtorturetestsuite(t, env, '//$SERVER/tmpguest -U%', description='anonymous connection') + plansmbtorture4testsuite(t, env, '//$SERVER/tmp -U$DC_USERNAME%$DC_PASSWORD') + plansmbtorture4testsuite(t, env, '//$SERVER/tmpguest -U%', description='anonymous connection') for env in ["plugin_s4_dc", "s3member"]: - plansmbtorturetestsuite(t, env, '//$SERVER/tmp -U$DC_USERNAME@$REALM%$DC_PASSWORD --option=torture:addc=$DC_SERVER') - plansmbtorturetestsuite(t, env, '//$SERVER/tmp -k yes -U$DC_USERNAME@$REALM%$DC_PASSWORD --option=torture:addc=$DC_SERVER', description='kerberos connection') - plansmbtorturetestsuite(t, env, '//$SERVER/tmpguest -U% --option=torture:addc=$DC_SERVER', description='anonymous connection') + plansmbtorture4testsuite(t, env, '//$SERVER/tmp -U$DC_USERNAME@$REALM%$DC_PASSWORD --option=torture:addc=$DC_SERVER') + plansmbtorture4testsuite(t, env, '//$SERVER/tmp -k yes -U$DC_USERNAME@$REALM%$DC_PASSWORD --option=torture:addc=$DC_SERVER', description='kerberos connection') + plansmbtorture4testsuite(t, env, '//$SERVER/tmpguest -U% --option=torture:addc=$DC_SERVER', description='anonymous connection') elif t == "raw.samba3posixtimedlock": - plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmpguest -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/s3dc/share') - plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmpguest -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/plugin_s4_dc/share') + plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmpguest -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/s3dc/share') + plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmpguest -U$USERNAME%$PASSWORD --option=torture:localdir=$SELFTEST_PREFIX/plugin_s4_dc/share') elif t == "raw.chkpath": - plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD') - plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD') + plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD') + plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmpcase -U$USERNAME%$PASSWORD') elif t == "raw.samba3hide" or t == "raw.samba3checkfsp" or t == "raw.samba3closeerr": - plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD') - plansmbtorturetestsuite(t, "simpleserver", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD') - plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD') + plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD') + plansmbtorture4testsuite(t, "simpleserver", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD') + plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD') elif t == "raw.session" or t == "smb2.session": - plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'plain') - plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmpenc -U$USERNAME%$PASSWORD', 'enc') - plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER/tmp -k no -U$USERNAME%$PASSWORD', 'ntlm') - plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER/tmp -k yes -U$USERNAME%$PASSWORD', 'krb5') + plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'plain') + plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmpenc -U$USERNAME%$PASSWORD', 'enc') + plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER/tmp -k no -U$USERNAME%$PASSWORD', 'ntlm') + plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER/tmp -k yes -U$USERNAME%$PASSWORD', 'krb5') elif t == "rpc.lsa": - plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'over ncacn_np ') - plansmbtorturetestsuite(t, "s3dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ') - plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'over ncacn_np ') - plansmbtorturetestsuite(t, "plugin_s4_dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ') + plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'over ncacn_np ') + plansmbtorture4testsuite(t, "s3dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ') + plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD', 'over ncacn_np ') + plansmbtorture4testsuite(t, "plugin_s4_dc", 'ncacn_ip_tcp:$SERVER_IP -U$USERNAME%$PASSWORD', 'over ncacn_ip_tcp ') elif t == "smb2.durable-open" or t == "smb2.durable-v2-open": - plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/durable -U$USERNAME%$PASSWORD') - plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER_IP/durable -U$USERNAME%$PASSWORD') + plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/durable -U$USERNAME%$PASSWORD') + plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER_IP/durable -U$USERNAME%$PASSWORD') else: - plansmbtorturetestsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD') - plansmbtorturetestsuite(t, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD') + plansmbtorture4testsuite(t, "s3dc", '//$SERVER_IP/tmp -U$USERNAME%$PASSWORD') + plansmbtorture4testsuite(t, "plugin_s4_dc", '//$SERVER/tmp -U$USERNAME%$PASSWORD') test = 'rpc.lsa.lookupsids' @@ -372,7 +355,7 @@ for s in signseal_options: for a in auth_options: binding_string = "ncacn_np:$SERVER[%s%s%s]" % (a, s, e) options = binding_string + " -U$USERNAME%$PASSWORD" - plansmbtorturetestsuite(test, "s3dc", options, 'over ncacn_np with [%s%s%s] ' % (a, s, e)) + plansmbtorture4testsuite(test, "s3dc", options, 'over ncacn_np with [%s%s%s] ' % (a, s, e)) plantestsuite("samba3.blackbox.rpcclient over ncacn_np with [%s%s%s] " % (a, s, e), "s3dc:local", [os.path.join(samba3srcdir, "script/tests/test_rpcclient.sh"), "none", options, configuration]) @@ -382,10 +365,10 @@ for s in signseal_options: a = "" binding_string = "ncacn_np:$SERVER[%s%s%s]" % (a, s, e) options = binding_string + " -k yes --krb5-ccache=$PREFIX/ktest/krb5_ccache-2" - plansmbtorturetestsuite(test, "ktest", options, 'krb5 with old ccache ncacn_np with [%s%s%s] ' % (a, s, e)) + plansmbtorture4testsuite(test, "ktest", options, 'krb5 with old ccache ncacn_np with [%s%s%s] ' % (a, s, e)) options = binding_string + " -k yes --krb5-ccache=$PREFIX/ktest/krb5_ccache-3" - plansmbtorturetestsuite(test, "ktest", options, 'krb5 ncacn_np with [%s%s%s] ' % (a, s, e)) + plansmbtorture4testsuite(test, "ktest", options, 'krb5 ncacn_np with [%s%s%s] ' % (a, s, e)) auth_options2 = ["krb5", "spnego,krb5"] for a in auth_options2: @@ -397,41 +380,36 @@ for s in signseal_options: options_list = ["", "-e"] for options in options_list: - plantestsuite("samba3.blackbox.smbclient_krb5 old ccache %s" % options, "ktest:local", + plantestsuite("samba3.blackbox.smbclient_krb5 old ccache %s" % options, "ktest:local", [os.path.join(samba3srcdir, "script/tests/test_smbclient_krb5.sh"), - "$PREFIX/ktest/krb5_ccache-2", -- Samba Shared Repository