1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-23 17:34:34 +03:00

s3-selftest: convert stream_depot vfstest driver into a subunit test

This gives us our first automated coverage of the vfstest binary.

We don't use the simple smb.conf because we need to override all the
paths for this to work as non-root without a panic, so we use the s3dc
environment, which already loads this module.

Andrew Bartlett
This commit is contained in:
Andrew Bartlett 2012-08-16 08:37:54 +10:00
parent 08baa11ab8
commit 748d8f5310
3 changed files with 35 additions and 10 deletions

View File

@ -1,9 +1,36 @@
#!/bin/sh
rm -r .streams
../../../bin/vfstest -s smb.conf -f vfstest.cmd
if [ $# -lt 2 ]; then
cat <<EOF
Usage: run.sh VFSTEST PREFIX
EOF
exit 1;
fi
TESTBASE=`dirname $0`
VFSTEST=$1
PREFIX=$2
shift 2
ADDARGS="$*"
VFSTEST_PREFIX=vfstest
VFSTEST_TMPDIR=$(mktemp -d ${PREFIX}/${VFSTEST_PREFIX}_XXXXXX)
incdir=`dirname $0`/../../../../testprogs/blackbox
. $incdir/subunit.sh
failed=0
cd $VFSTEST_TMPDIR || exit 1
testit "vfstest" $VFSTEST -f $TESTBASE/vfstest.cmd $ADDARGS || failed=`expr $failed + 1`
testname=".streams check"
subunit_start_test $testname
NUM=`find .streams | wc -l`
if [ $NUM -ne 3 ] ; then
echo "streams_depot left ${NUM} in .streams, expected 3"
exit 1
echo "streams_depot left ${NUM} in .streams, expected 3" | subunit_fail_test $testname
failed=`expr $failed + 1`
else
subunit_pass_test $testname
fi
exit 0
exit $failed

View File

@ -1,5 +0,0 @@
[tmp]
# "path" is ignored by vfstest, it's always set to $(pwd)
path = /tmp
writable = yes
vfs objects = streams_depot xattr_tdb

View File

@ -33,6 +33,7 @@ net = binpath('net')
smbtorture3 = binpath('smbtorture3')
ntlm_auth = binpath('ntlm_auth3')
dbwrap_tool = binpath('dbwrap_tool')
vfstest = binpath('vfstest')
torture_options = [configuration, "--maximum-runtime=$SELFTEST_MAXTIME",
"--basedir=$SELFTEST_TMPDIR",
@ -154,6 +155,8 @@ tests=["--ping", "--separator",
"--allocate-uid",
"--allocate-gid"]
plantestsuite("samba.vfstest.stream_depot", "s3dc:local", [os.path.join(samba3srcdir, "script/tests/stream-depot/run.sh"), binpath("vfstest"), "$PREFIX", configuration])
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])