Extract a helper function for searching for a pattern in a file and
printing the whole file if the pattern is not found.  It is useful
when starting tests with --verbose for debugging purposes.

Signed-off-by: Rene Scharfe <l....@web.de>
---
 t/t0008-ignores.sh      | 10 +---------
 t/test-lib-functions.sh | 12 ++++++++++++
 2 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/t/t0008-ignores.sh b/t/t0008-ignores.sh
index 4ef5ed4..0414c01 100755
--- a/t/t0008-ignores.sh
+++ b/t/t0008-ignores.sh
@@ -46,15 +46,7 @@ broken_c_unquote_verbose () {
 }
 
 stderr_contains () {
-       regexp="$1"
-       if grep "$regexp" "$HOME/stderr"
-       then
-               return 0
-       else
-               echo "didn't find /$regexp/ in $HOME/stderr"
-               cat "$HOME/stderr"
-               return 1
-       fi
+       test_must_contain "$1" "$HOME/stderr"
 }
 
 stderr_empty_on_success () {
diff --git a/t/test-lib-functions.sh b/t/test-lib-functions.sh
index 73e37a1..eb44cb4 100644
--- a/t/test-lib-functions.sh
+++ b/t/test-lib-functions.sh
@@ -689,6 +689,18 @@ test_must_be_empty () {
        fi
 }
 
+# Check if a file contains an expected pattern.
+test_must_contain () {
+       if grep "$1" "$2"
+       then
+               return 0
+       else
+               echo "didn't find /$1/ in '$2', it contains:"
+               cat "$2"
+               return 1
+       fi
+}
+
 # Tests that its two parameters refer to the same revision
 test_cmp_rev () {
        git rev-parse --verify "$1" >expect.rev &&
-- 
2.6.3

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to