The behaviour does not occur with other things like (defun foo () (errorp (error "hello"))); (foo) runs fine and does not error, so I'm guessing this has something to do with fiveam.
EDIT: So, okay, expanding 5am:is clearly indicates the issue:
(5am:def-test my-test-1 ()
(LET ((#:V1074 (ERROR "hello")))
(IF (ERRORP #:V1074)
(IT.BESE.FIVEAM::ADD-RESULT 'IT.BESE.FIVEAM::TEST-PASSED :TEST-EXPR
'(ERRORP (ERROR "hello")))
(IT.BESE.FIVEAM::PROCESS-FAILURE '(ERRORP (ERROR "hello"))
"~2&~S~2% evaluated to ~2&~S~2% which does not satisfy ~2&~S~2%"
'(ERROR "hello") #:V1074 'ERRORP))))
Okay, there is 5am:signals suitable for this use case:
Consider
errorp
defined as:Then, of these, the first form errors when run, the second does not:
The behaviour does not occur with other things like
(defun foo () (errorp (error "hello")))
; (foo) runs fine and does not error, so I'm guessing this has something to do with fiveam.EDIT: So, okay, expanding
5am:is
clearly indicates the issue:Okay, there is
5am:signals
suitable for this use case: