To support tests where the body returns a boolean value, but the exact format of the value is unknown but should be one of the Tcl_GetBoolean values, a new -match mode "boolean" is suggested. This mode would behave like this customMatch:
# test passes if expected and actual are both true or both false
customMatch boolean {apply {{e a} {expr {
[string is boolean -strict $e] &&
[string is boolean -strict $a] &&
(($e && $a) || (!$e && !$a))
}}}}
I see this can be slotted into tcltest.tcl around line 3318 of the current HEAD (v 1.104), and it already requires Tcl 8.5
example usage:
test b1 {true test} -match boolean -body {expr 0==0} -result true
test b2 {false test} -match boolean -body {expr {3 in {}}} -result no