X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=regress%2Ftests%2Fbsr-opt-test;h=9413a8c081fcbd344020433bb8ac0e33c8e0098e;hb=1e11e29bf661a26cef2419a31d82b6657370f0af;hp=381166ff93747bf59801f72246bb9131d6f69016;hpb=da2a233bb07ba58f4a79ed7cb317eef3efd8caf4;p=bacula%2Fbacula diff --git a/regress/tests/bsr-opt-test b/regress/tests/bsr-opt-test index 381166ff93..9413a8c081 100755 --- a/regress/tests/bsr-opt-test +++ b/regress/tests/bsr-opt-test @@ -6,36 +6,32 @@ # the other volume is not used. I.e. bsr optimization # works. # -cwd=`pwd` -scripts/copy-test-confs +TestName="bsr-opt-test" +JobName=bsr-opt +. scripts/functions + scripts/cleanup -echo "${cwd}/build" >/tmp/file-list -bin/bacula stop 2>&1 >/dev/null -bin/drop_sqlite_tables -bin/make_sqlite_tables +scripts/copy-test-confs +echo "${cwd}/build" >${cwd}/tmp/file-list -echo " " -echo " " -echo " === Starting bsr-opt-test ===" -echo " === Starting bsr-opt-test ===" >working/log -echo " " +change_jobname NightlySave $JobName +start_test -bin/bacula start 2>&1 >/dev/null -bin/console -c bin/console.conf <${cwd}/tmp/bconcmds +@$out /dev/null messages -@output tmp/log1.out +@$out ${cwd}/tmp/log1.out label storage=File1 volume=TestVolume001 label storage=File1 volume=TestVolume002 update Volume=TestVolume001 MaxVolBytes=3000000 -run job=NightlySave storage=File1 yes +run job=$JobName storage=File1 yes wait messages @# @# now do a restore @# -@output tmp/log2.out -restore where=${cwd}/tmp/bacula-restores current +@$out ${cwd}/tmp/log2.out +restore bootstrap=${cwd}/working/restore.bsr where=${cwd}/tmp/bacula-restores select storage=File1 unmark * cd ${cwd}/build/src/cats mark * @@ -44,25 +40,41 @@ done yes wait messages -@output +@$out quit END_OF_DATA -bin/bacula stop 2>&1 >/dev/null -grep TestVolume001 working/restore.bsr + +run_bacula +check_for_zombie_jobs storage=File1 +stop_bacula +# +# This test is not really reliable. What we want to do is +# to select files on only one Volume, then insure here +# that only one Volume is chosen. +# +grep TestVolume002 working/restore.bsr 2>&1 >/dev/null bsrstat=$? -grep "^Termination: *Backup OK" tmp/log1.out 2>&1 >/dev/null -bstat=$? -grep "^Termination: *Restore OK" tmp/log2.out 2>&1 >/dev/null -rstat=$? -diff -r build/src/cats tmp/bacula-restores${cwd}/build/src/cats 2>&1 >/dev/null -if [ $? != 0 -o $bsrstat != 1 -o $bstat != 0 -o $rstat != 0 ] ; then +check_two_logs + +diff -r build/src/cats ${cwd}/tmp/bacula-restores${cwd}/build/src/cats 2>&1 >/dev/null +if [ $? != 0 -o $bsrstat != 0 -o $bstat != 0 -o $rstat != 0 ] ; then echo " " echo " " echo " !!!!! bsr-opt-test Bacula source failed!!! !!!!! " echo " !!!!! bsr-opt-test failed!!! !!!!! " >>test.out + if [ $bstat != 0 -o $rstat != 0 ] ; then + echo " !!!!! Bad Job termination status !!!!! " + echo " !!!!! Bad Job termination status !!!!! " >>test.out + elif [ $bsrstat != 0 ] ; then + echo " !!!!! Volume selection error !!!!! " + echo " !!!!! Volume selection error !!!!! " >>test.out + else + echo " !!!!! Restored files differ !!!!! " + echo " !!!!! Restored files differ !!!!! " >>test.out + fi echo " " else - echo " ===== bsr-opt-test Bacula source OK ===== " - echo " ===== bsr-opt-test OK ===== " >>test.out + echo " ===== bsr-opt-test Bacula source OK `date +%R:%S` ===== " + echo " ===== bsr-opt-test OK `date +%R:%S` ===== " >>test.out scripts/cleanup fi