@Test public void testInheritSkippable() throws Exception { Map<Class<? extends Throwable>, Boolean> skippable = getSkippableExceptionClasses("s1", getContext()); System.err.println(skippable); assertEquals(5, skippable.size()); containsClassified(skippable, NullPointerException.class, true); containsClassified(skippable, ArithmeticException.class, true); containsClassified(skippable, CannotAcquireLockException.class, false); containsClassified(skippable, DeadlockLoserDataAccessException.class, false); }
@Test public void testRetryable() throws Exception { Map<Class<? extends Throwable>, Boolean> retryable = getRetryableExceptionClasses("s1", getContext()); System.err.println(retryable); assertEquals(3, retryable.size()); containsClassified(retryable, PessimisticLockingFailureException.class, true); containsClassified(retryable, CannotSerializeTransactionException.class, false); }
@Test public void testInheritSkippableWithNoMerge() throws Exception { Map<Class<? extends Throwable>, Boolean> skippable = getSkippableExceptionClasses("s2", getContext()); assertEquals(3, skippable.size()); containsClassified(skippable, IllegalArgumentException.class, true); assertFalse(skippable.containsKey(ArithmeticException.class)); containsClassified(skippable, ConcurrencyFailureException.class, false); assertFalse(skippable.containsKey(DeadlockLoserDataAccessException.class)); }
@Test public void testRetryableInherited() throws Exception { Map<Class<? extends Throwable>, Boolean> retryable = getRetryableExceptionClasses("s3", getContext()); System.err.println(retryable); assertEquals(2, retryable.size()); containsClassified(retryable, IOException.class, true); }
@Test public void testRetryableInheritedMerge() throws Exception { Map<Class<? extends Throwable>, Boolean> retryable = getRetryableExceptionClasses("s4", getContext()); System.err.println(retryable); assertEquals(3, retryable.size()); containsClassified(retryable, IOException.class, true); }