2015-07-14 16:30:35 +02:00
#!/bin/sh
#
2016-01-06 00:12:36 +02:00
# Blackbox test for 'dfree command' and smbclient "l"
# command disk free printout.
2015-07-14 16:30:35 +02:00
#
if [ $# -lt 6 ] ; then
cat <<EOF
Usage: test_dfree_command.sh SERVER DOMAIN USERNAME PASSWORD PREFIX SMBCLIENT
EOF
exit 1;
fi
SERVER = $1
DOMAIN = $2
USERNAME = $3
PASSWORD = $4
PREFIX = $5
smbclient = $6
shift 6
failed = 0
incdir = ` dirname $0 ` /../../../testprogs/blackbox
. $incdir /subunit.sh
test_smbclient_dfree( ) {
name = " $1 "
share = " $2 "
cmd = " $3 "
2016-01-06 00:12:36 +02:00
expected = " $4 "
2015-07-14 16:30:35 +02:00
shift
shift
2016-01-06 00:12:36 +02:00
shift
2015-07-14 16:30:35 +02:00
subunit_start_test " $name "
output = $( $VALGRIND $smbclient //$SERVER /$share -c " $cmd " $@ 2>& 1)
status = $?
if [ x$status = x0 ] ; then
2016-01-06 00:12:36 +02:00
received = $( echo " $output " | awk '/blocks of size/ {print $1, $5, $6}' )
if [ " $expected " = " $received " ] ; then
2015-07-14 16:30:35 +02:00
subunit_pass_test " $name "
else
echo " $output " | subunit_fail_test " $name "
fi
else
echo " $output " | subunit_fail_test " $name "
fi
return $status
}
2016-01-06 00:12:36 +02:00
test_smbclient_dfree "Test dfree command share root SMB3" dfree "l" "2000 1024. 20" -U$USERNAME %$PASSWORD --option= clientmaxprotocol = SMB3 || failed = ` expr $failed + 1`
test_smbclient_dfree "Test dfree command share root NT1" dfree "l" "2000 1024. 20" -U$USERNAME %$PASSWORD --option= clientmaxprotocol = NT1 || failed = ` expr $failed + 1`
test_smbclient_dfree "Test dfree command subdir1 SMB3" dfree "cd subdir1; l" "8000 1024. 80" -U$USERNAME %$PASSWORD --option= clientmaxprotocol = SMB3 || failed = ` expr $failed + 1`
test_smbclient_dfree "Test dfree command subdir2 SMB3" dfree "cd subdir2; l" "32000 1024. 320" -U$USERNAME %$PASSWORD --option= clientmaxprotocol = SMB3 || failed = ` expr $failed + 1`
#SMB1 queries disk usage stat on the share's root, regardless of working directory
test_smbclient_dfree "Test dfree command subdir1 NT1" dfree "cd subdir1; l" "2000 1024. 20" -U$USERNAME %$PASSWORD --option= clientmaxprotocol = NT1 || failed = ` expr $failed + 1`
2015-07-14 16:30:35 +02:00
exit $failed