summaryrefslogtreecommitdiff
path: root/source4/script/tests/win/wintest_base.sh
diff options
context:
space:
mode:
Diffstat (limited to 'source4/script/tests/win/wintest_base.sh')
-rwxr-xr-xsource4/script/tests/win/wintest_base.sh26
1 files changed, 17 insertions, 9 deletions
diff --git a/source4/script/tests/win/wintest_base.sh b/source4/script/tests/win/wintest_base.sh
index fa436a4af8..b12d2923f7 100755
--- a/source4/script/tests/win/wintest_base.sh
+++ b/source4/script/tests/win/wintest_base.sh
@@ -20,9 +20,19 @@ password="$3"
domain="$4"
shift 4
+export SMBTORTURE_REMOTE_HOST=$server
+
base_tests="BASE-UNLINK BASE-ATTR BASE-DELETE BASE-TCON BASE-OPEN BASE-CHKPATH"
all_errs=0
+err=0
+
+on_error() {
+ errstr=$1
+
+ all_errs=`expr $all_errs + 1`
+ restore_snapshot $errstr "$VM_CFG_PATH"
+}
for t in $base_tests; do
test_name="$t / WINDOWS SERVER"
@@ -32,23 +42,21 @@ for t in $base_tests; do
if [ $err_rtn -ne 0 ]; then
# If test setup fails, load VM snapshot and skip test.
- restore_snapshot "\n$test_name setup failed, skipping test."
+ on_error "\n$test_name setup failed, skipping test."
else
echo -e "\n$test_name setup completed successfully."
- old_errs=$all_errs
- testit "$test_name" $SMBTORTURE_BIN_PATH \
- -U $username%$password \
+ $SMBTORTURE_BIN_PATH -U $username%$password \
-W $domain //$server/$SMBTORTURE_REMOTE_SHARE_NAME \
- $t || all_errs=`expr $all_errs + 1`
- if [ $old_errs -lt $all_errs ]; then
- restore_snapshot "\n$test_name failed."
+ $t || err=1
+ if [ $err -ne 0 ]; then
+ on_error "\n$test_name failed."
else
echo -e "\n$test_name CLEANUP PHASE"
remove_share_test
if [ $err_rtn -ne 0 ]; then
# If cleanup fails, restore VM snapshot.
- restore_snapshot "\n$test_name removal failed."
+ on_error "\n$test_name removal failed."
else
echo -e "\n$test_name removal completed successfully."
fi
@@ -56,4 +64,4 @@ for t in $base_tests; do
fi
done
-testok $0 $all_errs
+exit $all_errs