Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow assertThrows to handle any Throwable (including AssertionsError #161

Open
zentox opened this issue Feb 4, 2025 · 0 comments
Open
Labels
enhancement New feature or request

Comments

@zentox
Copy link
Collaborator

zentox commented Feb 4, 2025

Currently, the assertThrows method is constrained to handle only instances of Exception. This limits its ability to catch Throwable instances such as AssertionsError, which is an Error and not an Exception.

Proposed Change:

Update the generic type signature of assertThrows from:

public static <T extends Exception> T assertThrows(Class<T> expected, Callable callable, Context context, PreCommentSupplier<? super ResultOfExceptionalCall<T>> preCommentSupplier)

to

public static <T extends Throwable> T assertThrows(Class<T> expected, Callable callable, Context context, PreCommentSupplier<? super ResultOfExceptionalCall<T>> preCommentSupplier)

The change ensures that assertThrows can handle all types of Throwable, including both Exception and Error types (e.g., AssertionsError).
This also makes the method more flexible and robust, allowing for broader use cases where errors may be thrown during assertions.

@zentox zentox added the enhancement New feature or request label Feb 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant