diff mbox series

[ima-evm-utils,v3,06/11] Introduce TST_LIST variable to select a test to execute

Message ID 20230125085030.1568256-7-roberto.sassu@huaweicloud.com (mailing list archive)
State New, archived
Headers show
Series Support testing in new enviroments | expand

Commit Message

Roberto Sassu Jan. 25, 2023, 8:50 a.m. UTC
From: Roberto Sassu <roberto.sassu@huawei.com>

It might be desirable, due to restrictions in the testing environment, to
execute tests individually. Introduce the TST_LIST variable, which can be
set with the name of the test to execute. If the variable is set,
expect_pass and expect_fail automatically skip the tests when the first
argument of those functions does not match the value of TST_LIST.

TST_LIST can be also used in new environments, to execute a subset of
defined tests for each environment. It is sufficient to add the variable
and its value to the kernel command line.

Signed-off-by: Roberto Sassu <roberto.sassu@huawei.com>
---
 tests/functions.sh | 12 ++++++++++++
 1 file changed, 12 insertions(+)

Comments

Stefan Berger Jan. 25, 2023, 2:06 p.m. UTC | #1
On 1/25/23 03:50, Roberto Sassu wrote:
> From: Roberto Sassu <roberto.sassu@huawei.com>
> 
> It might be desirable, due to restrictions in the testing environment, to
> execute tests individually. Introduce the TST_LIST variable, which can be
> set with the name of the test to execute. If the variable is set,
> expect_pass and expect_fail automatically skip the tests when the first
> argument of those functions does not match the value of TST_LIST.
> 
> TST_LIST can be also used in new environments, to execute a subset of
> defined tests for each environment. It is sufficient to add the variable
> and its value to the kernel command line.
> 
> Signed-off-by: Roberto Sassu <roberto.sassu@huawei.com>
> ---
>   tests/functions.sh | 12 ++++++++++++
>   1 file changed, 12 insertions(+)
> 
> diff --git a/tests/functions.sh b/tests/functions.sh
> index 9dc9b96d1d7a..d2edd8514e85 100755
> --- a/tests/functions.sh
> +++ b/tests/functions.sh
> @@ -72,6 +72,12 @@ declare -i TNESTED=0 # just for sanity checking
>   expect_pass() {
>     local -i ret
>   
> +  if [ -n "$TST_LIST" ] && [ "${TST_LIST/$1/}" = "$TST_LIST" ]; then
> +    [ "$VERBOSE" -gt 1 ] && echo "____ SKIP test: $*"
> +    testsskip+=1
> +    return $SKIP
> +  fi
> +
>     if [ $TNESTED -gt 0 ]; then
>       echo $RED"expect_pass should not be run nested"$NORM
>       testsfail+=1
> @@ -98,6 +104,12 @@ expect_pass() {
>   expect_fail() {
>     local ret
>   
> +  if [ -n "$TST_LIST" ] && [ "${TST_LIST/$1/}" = "$TST_LIST" ]; then
> +    [ "$VERBOSE" -gt 1 ] && echo "____ SKIP test: $*"
> +    testsskip+=1
> +    return $SKIP
> +  fi
> +
>     if [ $TNESTED -gt 0 ]; then
>       echo $RED"expect_fail should not be run nested"$NORM
>       testsfail+=1

return "$SKIP" would be better.

Reviewed-by: Stefan Berger <stefanb@linux.ibm.com>
diff mbox series

Patch

diff --git a/tests/functions.sh b/tests/functions.sh
index 9dc9b96d1d7a..d2edd8514e85 100755
--- a/tests/functions.sh
+++ b/tests/functions.sh
@@ -72,6 +72,12 @@  declare -i TNESTED=0 # just for sanity checking
 expect_pass() {
   local -i ret
 
+  if [ -n "$TST_LIST" ] && [ "${TST_LIST/$1/}" = "$TST_LIST" ]; then
+    [ "$VERBOSE" -gt 1 ] && echo "____ SKIP test: $*"
+    testsskip+=1
+    return $SKIP
+  fi
+
   if [ $TNESTED -gt 0 ]; then
     echo $RED"expect_pass should not be run nested"$NORM
     testsfail+=1
@@ -98,6 +104,12 @@  expect_pass() {
 expect_fail() {
   local ret
 
+  if [ -n "$TST_LIST" ] && [ "${TST_LIST/$1/}" = "$TST_LIST" ]; then
+    [ "$VERBOSE" -gt 1 ] && echo "____ SKIP test: $*"
+    testsskip+=1
+    return $SKIP
+  fi
+
   if [ $TNESTED -gt 0 ]; then
     echo $RED"expect_fail should not be run nested"$NORM
     testsfail+=1