From 27245fdabff573bb85d6aeb2e228a854170296ee Mon Sep 17 00:00:00 2001 From: Vitaly Chikunov Date: Fri, 22 Mar 2024 05:12:53 +0300 Subject: [PATCH] tcl_tests: Introduce new exitStatus -1 to ignore exit codes It's proposed[1] that crl and req change exit code making it unreliable for some commands. Allow tests to ignore exit codes by specifying expected exit code `-1`. This will also make such tests to always use regexp match mode. Also, slightly fix the logic of applying regexp. Commentary says test _parameter_ (`exitStatus`) 1 is used to trigger regexp matching but in fact actual command exit code (`status`) 1 is used for that. This change did not cause any test result difference. Link: https://github.com/openssl/openssl/pull/23773 Signed-off-by: Vitaly Chikunov --- tcl_tests/test.tcl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tcl_tests/test.tcl b/tcl_tests/test.tcl index e281f1a..276db7e 100644 --- a/tcl_tests/test.tcl +++ b/tcl_tests/test.tcl @@ -198,7 +198,8 @@ namespace eval test { set timestamp "$teststart+[expr $testend-$teststart]" } } - if {$status!=$exitStatus || ($status==1?![regexp --\ + if {($exitStatus!=-1 && $status!=$exitStatus) || + ($exitStatus!=0?![regexp --\ [rus $expectedResult] $result]:([info exists opts(-time)]?\ ![listcompare $result $expectedResult $opts(-time)]:\ [string compare "$result" "$expectedResult"]))} { -- 2.39.5