62 lines
1.8 KiB
Diff
62 lines
1.8 KiB
Diff
From: Simon McVittie <smcv@debian.org>
|
|
Date: Sun, 17 Apr 2016 09:57:06 +0100
|
|
Subject: libtest: show files' contents when assertions about them fail
|
|
|
|
I've seen an intermittent test failure in an autobuilder (sbuild)
|
|
environment where logs from failed builds cannot be retrieved,
|
|
but I can no longer reproduce it. Put the contents of the offending
|
|
file in the test's failing output so that if the failure comes back,
|
|
it can be debugged.
|
|
|
|
Signed-off-by: Simon McVittie <smcv@debian.org>
|
|
Forwarded: https://github.com/ostreedev/ostree/pull/264
|
|
Applied-upstream: 2016.6, commit:24cab773a2c849a8153529e3eb5f967302339f68
|
|
---
|
|
tests/libtest.sh | 16 ++++++++++++----
|
|
1 file changed, 12 insertions(+), 4 deletions(-)
|
|
|
|
diff --git a/tests/libtest.sh b/tests/libtest.sh
|
|
index 572f023..afdf364 100755
|
|
--- a/tests/libtest.sh
|
|
+++ b/tests/libtest.sh
|
|
@@ -100,13 +100,17 @@ assert_has_dir () {
|
|
|
|
assert_not_has_file () {
|
|
if test -f "$1"; then
|
|
- echo 1>&2 "File '$1' exists"; exit 1
|
|
+ sed -e 's/^/# /' < "$1" >&2
|
|
+ echo 1>&2 "File '$1' exists"
|
|
+ exit 1
|
|
fi
|
|
}
|
|
|
|
assert_not_file_has_content () {
|
|
if grep -q -e "$2" "$1"; then
|
|
- echo 1>&2 "File '$1' incorrectly matches regexp '$2'"; exit 1
|
|
+ sed -e 's/^/# /' < "$1" >&2
|
|
+ echo 1>&2 "File '$1' incorrectly matches regexp '$2'"
|
|
+ exit 1
|
|
fi
|
|
}
|
|
|
|
@@ -118,13 +122,17 @@ assert_not_has_dir () {
|
|
|
|
assert_file_has_content () {
|
|
if ! grep -q -e "$2" "$1"; then
|
|
- echo 1>&2 "File '$1' doesn't match regexp '$2'"; exit 1
|
|
+ sed -e 's/^/# /' < "$1" >&2
|
|
+ echo 1>&2 "File '$1' doesn't match regexp '$2'"
|
|
+ exit 1
|
|
fi
|
|
}
|
|
|
|
assert_file_empty() {
|
|
if test -s "$1"; then
|
|
- echo 1>&2 "File '$1' is not empty"; exit 1
|
|
+ sed -e 's/^/# /' < "$1" >&2
|
|
+ echo 1>&2 "File '$1' is not empty"
|
|
+ exit 1
|
|
fi
|
|
}
|
|
|