mirror of
https://github.com/samba-team/samba.git
synced 2024-12-22 13:34:15 +03:00
selftest: more dfree command and smbclient disk usage tests
Add tests that cover disk usage printing by smbclient, as well as passing directory info to the "dfree command" script. BUG: https://bugzilla.samba.org/show_bug.cgi?id=11662 Signed-off-by: Uri Simchoni <uri@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org> Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Wed Jan 6 03:58:59 CET 2016 on sn-devel-144
This commit is contained in:
parent
275da6c5c7
commit
3e1b26bd6d
@ -590,6 +590,8 @@ sub setup_fileserver($$)
|
||||
|
||||
my $dfree_share_dir="$share_dir/dfree";
|
||||
push(@dirs, $dfree_share_dir);
|
||||
push(@dirs, "$dfree_share_dir/subdir1");
|
||||
push(@dirs, "$dfree_share_dir/subdir2");
|
||||
|
||||
my $valid_users_sharedir="$share_dir/valid_users";
|
||||
push(@dirs,$valid_users_sharedir);
|
||||
|
@ -1,6 +1,7 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Blackbox test for 'dfree command'
|
||||
# Blackbox test for 'dfree command' and smbclient "l"
|
||||
# command disk free printout.
|
||||
#
|
||||
|
||||
if [ $# -lt 6 ]; then
|
||||
@ -26,15 +27,16 @@ test_smbclient_dfree() {
|
||||
name="$1"
|
||||
share="$2"
|
||||
cmd="$3"
|
||||
expected="$4"
|
||||
shift
|
||||
shift
|
||||
shift
|
||||
subunit_start_test "$name"
|
||||
output=$($VALGRIND $smbclient //$SERVER/$share -c "$cmd" $@ 2>&1)
|
||||
status=$?
|
||||
if [ x$status = x0 ]; then
|
||||
echo "$output" | grep "2000 blocks of size 1024. 20 blocks available" >/dev/null
|
||||
status=$?
|
||||
if [ x$status = x0 ]; then
|
||||
received=$(echo "$output" | awk '/blocks of size/ {print $1, $5, $6}')
|
||||
if [ "$expected" = "$received" ]; then
|
||||
subunit_pass_test "$name"
|
||||
else
|
||||
echo "$output" | subunit_fail_test "$name"
|
||||
@ -46,6 +48,11 @@ test_smbclient_dfree() {
|
||||
}
|
||||
|
||||
|
||||
test_smbclient_dfree "Test dfree command" dfree "l" -U$USERNAME%$PASSWORD || failed=`expr $failed + 1`
|
||||
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`
|
||||
|
||||
exit $failed
|
||||
|
@ -1,2 +1,8 @@
|
||||
#!/bin/sh
|
||||
echo "1000 10 2048"
|
||||
if [ "$1" = "." ] ; then
|
||||
echo "1000 10 2048"
|
||||
elif [ "$1" = "subdir1" ] ; then
|
||||
echo "2000 20 4096"
|
||||
else
|
||||
echo "4000 40 8192"
|
||||
fi
|
||||
|
Loading…
Reference in New Issue
Block a user