[LTP] [PATCH 1/1] tst_env.sh: Backport common functions from tst_test.sh

Petr Vorel pvorel@suse.cz
Thu Nov 20 17:19:57 CET 2025


Backport:
* ROD()
* ROD_SILENT()
* EXPECT_PASS()
* EXPECT_PASS_BRK()
* EXPECT_FAIL()
* EXPECT_FAIL_BRK()
+ their dependencies.

Signed-off-by: Petr Vorel <pvorel@suse.cz>
---
To allow to use ROD() when calling stress-ng in thermal01.sh.

Kind regards,
Petr

 testcases/lib/tst_env.sh | 71 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 71 insertions(+)

diff --git a/testcases/lib/tst_env.sh b/testcases/lib/tst_env.sh
index 585790a7d0..6a38f8f020 100644
--- a/testcases/lib/tst_env.sh
+++ b/testcases/lib/tst_env.sh
@@ -1,6 +1,7 @@
 #!/bin/sh
 # SPDX-License-Identifier: GPL-2.0-or-later
 # Copyright (c) 2024-2025 Cyril Hrubis <chrubis@suse.cz>
+# Copyright (c) Linux Test Project, 2025
 #
 # This is a minimal test environment for a shell scripts executed from C by
 # tst_run_shell() function. Shell tests must use the tst_loader.sh instead!
@@ -30,3 +31,73 @@ tst_brk_()
 
 alias tst_res="tst_res_ $tst_script_name \$LINENO"
 alias tst_brk="tst_brk_ $tst_script_name \$LINENO"
+
+ROD_SILENT()
+{
+	local tst_out
+
+	tst_out=$(tst_rod "$@" 2>&1)
+	if [ $? -ne 0 ]; then
+		echo "$tst_out"
+		tst_brk TBROK "$@ failed"
+	fi
+}
+
+ROD()
+{
+	tst_rod "$@"
+	if [ $? -ne 0 ]; then
+		tst_brk TBROK "$@ failed"
+	fi
+}
+
+_tst_expect_pass()
+{
+	local fnc="$1"
+	shift
+
+	tst_rod "$@"
+	if [ $? -eq 0 ]; then
+		tst_res TPASS "$@ passed as expected"
+		return 0
+	else
+		$fnc TFAIL "$@ failed unexpectedly"
+		return 1
+	fi
+}
+
+_tst_expect_fail()
+{
+	local fnc="$1"
+	shift
+
+	# redirect stderr since we expect the command to fail
+	tst_rod "$@" 2> /dev/null
+	if [ $? -ne 0 ]; then
+		tst_res TPASS "$@ failed as expected"
+		return 0
+	else
+		$fnc TFAIL "$@ passed unexpectedly"
+		return 1
+	fi
+}
+
+EXPECT_PASS()
+{
+	_tst_expect_pass tst_res "$@"
+}
+
+EXPECT_PASS_BRK()
+{
+	_tst_expect_pass tst_brk "$@"
+}
+
+EXPECT_FAIL()
+{
+	_tst_expect_fail tst_res "$@"
+}
+
+EXPECT_FAIL_BRK()
+{
+	_tst_expect_fail tst_brk "$@"
+}
-- 
2.51.0



More information about the ltp mailing list