]> git.sur5r.net Git - bacula/bacula/blobdiff - regress/tests/weird-files2-test
commit changes
[bacula/bacula] / regress / tests / weird-files2-test
index 0782eb9690bb9aa386739a53be77a0262b6aa3af..fe5a50c97275346afbed2b6347bde25ff1a9de6f 100755 (executable)
@@ -3,6 +3,13 @@
 # Run a simple backup of the Bacula build directory
 #   then restore it.
 #
+debug=0
+if test "$debug" -eq 1 ; then
+  out="tee"
+else
+  out="output"
+fi
+
 if test ! -d weird-files ; then
    echo " "
    echo "weird files not configured. Test not run."
@@ -14,29 +21,34 @@ scripts/cleanup
 rm -rf weird-files2
 cp -Rp weird-files weird-files2
 echo "${cwd}/weird-files2" >/tmp/file-list
-bin/bacula stop 2>&1 >/dev/null
-bin/drop_sqlite_tables
-bin/make_sqlite_tables
 
 echo " "
 echo " "
-echo " === Starting weird filenames2 test ==="
-echo " === Starting weird filenames2 test ===" >>working/log
+echo " === Starting weird-files2 test at `date +%R:%S` ==="
+echo " === Starting weird-file2 test at `date +%R:%S` ===" >>working/log
 echo " "
 
 bin/testls weird-files2 >${cwd}/tmp/original
-bin/bacula start 2>&1 >/dev/null
-bin/bconsole -c bin/bconsole.conf <<END_OF_DATA
-@output /dev/null
+
+cat <<END_OF_DATA >tmp/bconcmds
+@$out /dev/null
 messages
-@output tmp/log1.out
+@$out tmp/log1.out
 label storage=File volume=TestVolume001
 run job=NightlySave yes
 wait
 messages
-@output
+@$out
 quit
 END_OF_DATA
+if test "$debug" -eq 1 ; then
+  bin/bacula start
+  cat tmp/bconcmds | bin/bconsole -c bin/bconsole.conf
+else
+  bin/bacula start 2>&1 >/dev/null
+  cat tmp/bconcmds | bin/bconsole -c bin/bconsole.conf  2>&1 >/dev/null
+fi
+scripts/check_for_zombie_jobs storage=File 
 #
 # Now mess up the a hard link, and a soft link
 #
@@ -46,27 +58,36 @@ ln hard-file3 hard-file2
 rm -f soft-file2
 ln -s soft-file3 soft-file2
 cd ${cwd}
-bin/bconsole -c bin/bconsole.conf <<END_OF_DATA
-@output /dev/null
+cat <<END_OF_DATA >tmp/bconcmds
+@$out /dev/null
 messages
 @# 
 @# now do a restore
 @#
-@output tmp/log2.out
-restore where=
+@$out tmp/log2.out
+restore where= storage=File
 5
+unmark *
+mark *
 done
 yes
 wait
 messages
-@output
+@$out
 quit
 END_OF_DATA
+
+if test "$debug" -eq 1 ; then
+  cat tmp/bconcmds | bin/bconsole -c bin/bconsole.conf
+else
+  cat tmp/bconcmds | bin/bconsole -c bin/bconsole.conf  2>&1 >/dev/null
+fi
+scripts/check_for_zombie_jobs storage=File 
 bin/bacula stop 2>&1 >/dev/null
 bin/testls weird-files2 >${cwd}/tmp/restored
-grep "^Termination: *Backup OK" tmp/log1.out 2>&1 >/dev/null
+grep "^  Termination: *Backup OK" tmp/log1.out 2>&1 >/dev/null
 bstat=$?
-grep "^Termination: *Restore OK" tmp/log2.out 2>&1 >/dev/null
+grep "^  Termination: *Restore OK" tmp/log2.out 2>&1 >/dev/null
 rstat=$?
 diff ${cwd}/tmp/original ${cwd}/tmp/restored 2>&1 >/dev/null
 if [ $? != 0 -o $bstat != 0 -o $rstat != 0 ] ; then
@@ -74,6 +95,13 @@ if [ $? != 0 -o $bstat != 0 -o $rstat != 0 ] ; then
    echo " "
    echo "  !!!!! Weird files2 test failed!!! !!!!! "
    echo "  !!!!! Weird files2 test failed!!! !!!!! " >>test.out
+   if [ $bstat != 0 -o $rstat != 0 ] ; then
+      echo "  !!!!! Bad Job termination status     !!!!! "
+      echo "  !!!!! Bad Job termination status     !!!!! " >>test.out
+   else
+      echo "  !!!!! Restored files differ          !!!!! "
+      echo "  !!!!! Restored files differ          !!!!! " >>test.out
+   fi
    echo " "
 else
    echo "  ===== Weird files2 test OK ===== "