Closed
Description
Per this comment, we want to alter the design of unit tests with non-()
type. The new design is:
#[should_panic]
can only be applied to tests with()
return type and continues to have the same meaning.- For non-should-panic tests, the return type
T
defines the error result using theTermination
trait.
Achieving these changes should be relatively straight-forward. Basically the only thing we have to do is to make it an error to apply #[should_panic]
unless the test has ()
. Currently we check that the test has the correct signature here:
Lines 330 to 355 in 9afed64
In any case, we just have to extend that function to also check whether there is a should_panic
attribute -- if so, we can report an error, sort of like this:
Line 365 in 9afed64