Alex Shinn wrote:
> It seems like the only forms which need to be macros are
>
> test-assert
> test-equal
> test-eqv
> test-eq
> test-error
>
> because they need to delay/skip evalutation of the test form and setup
> appropriate error handlers.
test-group and test-group-with-cleanup also need to be macros,
because they can also be skipped.
test-with-runner also needs to be a macro, but it's a convenience
form, not primitive.
> What if we define and expose test-thunk:
>
> --procedure: test-thunk [name] thunk
>
> which does the same as test-assert but takes a thunk which it
> evaluates when it is run. Then the above macros could just be
> convenience wrappers around this.
I think that works and seems to make sense.
> Even if we don't expose a procedural interface the SRFI should specify
> that the test-name is evaluated at runtime, for use with data driven
> tests (I agree the name should be a string).
I.e. the specification should clarify that the test-name
is an expression that evaluates to string, not necessarily
a string literal?
--
--Per Bothner
xxxxxx@bothner.com http://per.bothner.com/