]> git.sur5r.net Git - bacula/bacula/blobdiff - regress/tests/regexwhere-test
Fix regexwhere test
[bacula/bacula] / regress / tests / regexwhere-test
index abd62c1ee1e64d0b750490b781b901701996acae..eaaa3fe6faf16e9986c0cc0545b269e78c99e774 100755 (executable)
@@ -7,16 +7,23 @@ TestName="regexwhere-test"
 JobName=backup
 
 . scripts/functions
-set_debug 0
-copy_test_confs
 
-rm -f bin/bacula-dir.conf
-rm -f tmp/RUN*
-rm -f ${cwd}/build/po/*old*
-rm -rf tmp/po
+scripts/cleanup
+scripts/copy-test-confs
+
 /bin/cp -f scripts/bacula-dir.conf.regexwhere bin/bacula-dir.conf
 
-echo "${cwd}/build/po" >/tmp/file-list
+#
+# Remove the !restored from the messages resource because
+#  this test needs the restored listing to verify the
+#  restore results
+#
+outf="${cwd}/tmp/sed_tmp"
+echo "s%, \!restored%%g" >${outf}
+cp ${cwd}/bin/bacula-fd.conf ${cwd}/tmp/1
+sed -f ${outf} ${cwd}/tmp/1 >${cwd}/bin/bacula-fd.conf
+
+echo "${cwd}/build/po" >tmp/file-list
 
 start_test
 
@@ -146,7 +153,7 @@ mod
 @## Where 
 m
 9
-/tmp/bacula-restore-it
+tmp/bacula-restore-it
 m
 @## use add suffix
 10
@@ -160,14 +167,17 @@ messages
 quit
 END_OF_DATA
 
+run_bacula
 
-bin/bacula start
-cat tmp/bconcmds | bin/bconsole -c bin/bconsole.conf > /dev/null
 stop_bacula
 
-export dstat=0
-export bstat=0
-export rstat=0
+
+dstat=0
+bstat=0
+rstat=0
+export dstat
+export bstat
+export rstat
 
 J=JobA
 if grep -q "Restore OK"  tmp/RUN_$J &&
@@ -182,7 +192,7 @@ fi
 J=JobB
 # $cwd begins with /
 if grep -q "Restore OK"  tmp/RUN_$J &&
-   grep -q "/tmp/bacula-restore${cwd}/po/fr.po.old" tmp/RUN_$J
+   grep -q "tmp/bacula-restore${cwd}/po/fr.po.old" tmp/RUN_$J
 then
     [ "$debug" = 1 ] && echo $J ok
 else
@@ -192,7 +202,7 @@ fi
 
 J=JobC
 if grep -q "Restore OK"  tmp/RUN_$J &&
-   grep -q "/tmp/bacula-restore${cwd}/build/po/fr.po" tmp/RUN_$J
+   grep -q "tmp/bacula-restore${cwd}/build/po/fr.po" tmp/RUN_$J
 then
     [ "$debug" = 1 ] && echo $J ok
 else
@@ -221,7 +231,7 @@ fi
 
 J=JobF
 if grep -q "Restore OK"  tmp/RUN_$J &&
-   grep -q "/tmp/regress/build/po/fr.po" tmp/RUN_$J
+   grep -q "${cwd}/build/po/fr.po" tmp/RUN_$J
 then
     [ "$debug" = 1 ] && echo $J ok
 else
@@ -231,7 +241,7 @@ fi
 
 J=JobG
 if grep -q "Restore OK"  tmp/RUN_$J &&
-   grep -q "/tmp/bacula-restore/build/po/fr.po" tmp/RUN_$J
+   grep -q "tmp/bacula-restore/build/po/fr.po" tmp/RUN_$J
 then
     [ "$debug" = 1 ] && echo $J ok
 else
@@ -263,7 +273,7 @@ fi
 J=JobJ
 if grep -q "Restore OK"      tmp/RUN_$J &&
    grep -q "/etc/passwd.old" tmp/RUN_$J &&
-   grep -q -e "Where: */tmp/bacula-restore-it" tmp/RUN_$J &&
+   grep -q -e "Where: *tmp/bacula-restore-it" tmp/RUN_$J &&
    grep -q "${cwd}/build/po/fr.po.old" tmp/RUN_$J
 then
     [ "$debug" = 1 ] && echo $J ok
@@ -275,10 +285,11 @@ fi
 # test with bregtest
 
 find ${cwd}/build > tmp/list
-sed -e 's/readme/readme/i' -e 's/\([ch]\)$/.old.\1/' tmp/list > tmp/list.sed
+# thanks to BSD like system for that...
+sed -e 's/[Rr][Ee][Aa][Dd][Mm][Ee]/readme/' -e 's/\([ch]\)$/.old.\1/' tmp/list > tmp/list.sed
 ./build/src/tools/bregtest -s -f tmp/list -e '/readme/readme/i,/([ch])$/.old.$1/' > tmp/list.bsed
 
-if diff -q tmp/list.bsed tmp/list.sed
+if diff tmp/list.bsed tmp/list.sed >/dev/null 2>&1
 then
     [ "$debug" = 1 ] && echo bregtest ok
 else
@@ -287,4 +298,4 @@ else
 
 fi
 
-end_test
\ No newline at end of file
+end_test