[LTP] [RFC] [PATCH] shell: ROD_SILENT: Print std{out, err} on failure
Cyril Hrubis
chrubis@suse.cz
Mon Feb 12 15:40:51 CET 2018
Recently we had a problem when openQA (test automation framework) passed
wrong device path as LTP_BIG_DEV. It has been much more complicated to
debug because the error message from mkfs was not shown at all, since
the tst_mkfs uses ROD_SILENT to execute the mkfs command.
The best solution for ROD_SILENT is to store the command output into a
variable and print it only on failure which is done by this patch.
Signed-off-by: Cyril Hrubis <chrubis@suse.cz>
---
testcases/lib/test.sh | 3 ++-
testcases/lib/tst_test.sh | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/testcases/lib/test.sh b/testcases/lib/test.sh
index 341c1f0f4..bce9893a9 100644
--- a/testcases/lib/test.sh
+++ b/testcases/lib/test.sh
@@ -225,8 +225,9 @@ tst_timeout()
ROD_SILENT()
{
- $@ > /dev/null 2>&1
+ local tst_out=$($@ 2>&1)
if [ $? -ne 0 ]; then
+ echo "$tst_out"
tst_brkm TBROK "$@ failed"
fi
}
diff --git a/testcases/lib/tst_test.sh b/testcases/lib/tst_test.sh
index d6b638549..48afb9cc4 100644
--- a/testcases/lib/tst_test.sh
+++ b/testcases/lib/tst_test.sh
@@ -118,8 +118,9 @@ tst_brk()
ROD_SILENT()
{
- tst_rod $@ > /dev/null 2>&1
+ local tst_out=$(tst_rod $@ 2>&1)
if [ $? -ne 0 ]; then
+ echo "$tst_out"
tst_brk TBROK "$@ failed"
fi
}
--
2.13.6
More information about the ltp
mailing list