From: Vitaly Chikunov Date: Fri, 22 Mar 2024 02:12:53 +0000 (+0300) Subject: tcl_tests: Introduce new exitStatus -1 to ignore exit codes X-Git-Url: http://www.wagner.pp.ru/gitweb/?p=openssl-gost%2Fengine.git;a=commitdiff_plain;h=27245fdabff573bb85d6aeb2e228a854170296ee 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 --- 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"]))} {