-
Enhancement
-
Resolution: Done
-
Minor
-
None
The annotation @ShouldThrowException is expressive enough to be understood as meaning a generic Exception will be thrown (during deployment) unless a more specific exception is specified.
Therefore, a default should be specified for the value attribute such that:
@ShouldThrowException == @ShouldThrowException(Exception.class)
Here's the resulting annotation definition:
@Documented @Retention(RUNTIME) @Target(ElementType.METHOD) public @interface ShouldThrowException { Class<? extends Exception> value() default Exception.class; }
(Alternatively, the default can be Throwable.class, though the value of least surprise is likely Exception.class).