package org.infinispan.assertions; import static org.testng.AssertJUnit.assertNotNull; import static org.testng.AssertJUnit.assertTrue; /** * Custom assertion for testing exceptions. * * @author Sebastian Laskawiec */ public class ExceptionAssertion { private Exception actual; private ExceptionAssertion(Exception actual) { this.actual = actual; } public static ExceptionAssertion assertThat(Exception actual) { return new ExceptionAssertion(actual); } public ExceptionAssertion IsNotNull() { assertNotNull(actual); return this; } public ExceptionAssertion isTypeOf(Class<? extends Exception> exceptionClass) { assertTrue(actual.getClass().isAssignableFrom(exceptionClass)); return this; } public ExceptionAssertion hasCauseTypeOf(Class<?> cause) { assertTrue(actual.getCause().getClass().isAssignableFrom(cause)); return this; } }