chiark / gitweb /
test suite: gitattributes: Check that warning does not appear when unexpected
[dgit.git] / tests / tests / gitattributes
index 0093f0a454721d4a3b08585e9eb659cd6a2e0954..dec85b56ee6d32db5085acb5059d28f632901e75 100755 (executable)
@@ -121,11 +121,27 @@ sums_check () {
        diff -U0 ../sums ../$sums
 }
 
+t-dgit-warn-check () {
+       local warnok=$1; shift
+       # warnok should be  0 if the warning is expected
+       #                   1 if the warning is NOT expected
+
+       local err=stderr.$wd
+
+       LC_MESSAGES=C t-dgit "$@" 2>&1 |tee ../$err
+
+       set +e
+       fgrep 'warning: source tree contains .gitattributes' ../$err
+       rc=$?
+       set -e
+
+       test "$rc" = "$warnok"
+}
+
 sfmt_import () {
        inst=$1
        dgitargs=$2
        branch="import.$sfmt-$inst"
-       brkerr=stderr.$sfmt-$inst.broken
        dscf=${p}_${v}.dsc
        sums=sums.$sfmt-$inst
        wd=$pdb-import-$inst
@@ -134,10 +150,8 @@ sfmt_import () {
        cd $wd
        git init
 
-       LC_MESSAGES=C \
-       t-dgit $dgitargs import-dsc ../$dscf +$branch.broken \
-               2>&1 |tee ../$brkerr
-       fgrep 'warning: source tree contains .gitattributes' ../$brkerr
+       t-dgit-warn-check 0 $dgitargs import-dsc ../$dscf +$branch.broken
+
        git checkout $branch.broken
        sha256sum af/* >../$sums.broken
 
@@ -153,7 +167,7 @@ sfmt_import () {
 
        t-dgit setup-new-tree
 
-       t-dgit $dgitargs import-dsc ../$dscf +$branch
+       t-dgit-warn-check 1 $dgitargs import-dsc ../$dscf +$branch
        git checkout $branch
        git reset --hard