Class BulkheadAsynchRetryTest

java.lang.Object
org.jboss.arquillian.testng.Arquillian
org.eclipse.microprofile.fault.tolerance.tck.bulkhead.BulkheadAsynchRetryTest
All Implemented Interfaces:
org.testng.IHookable, org.testng.ITestNGListener

public class BulkheadAsynchRetryTest extends org.jboss.arquillian.testng.Arquillian
This collection of tests tests that failures, particularly Asynchronous Bulkhead exception related failures will cause the Retry annotation logic to work correctly.
Author:
Gordon Hutchison, carlosdlr, Andrew Rouse
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.jboss.arquillian.testng.Arquillian

    org.jboss.arquillian.testng.Arquillian.UpdateResultListener
  • Field Summary

    Fields inherited from class org.jboss.arquillian.testng.Arquillian

    ARQUILLIAN_DATA_PROVIDER
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static org.jboss.shrinkwrap.api.spec.WebArchive
    This is the Arquillian deploy method that controls the contents of the war that contains all the tests.
    void
    Test that bulkhead exceptions are retried with annotations on class
    void
    Test that bulkhead exceptions are retried with annotations on method
    void
    Test that we still get BulkheadExceptions despite using Retry if the bulkhead remains full while the retry is active.
    void
    Test that we still get BulkheadExceptions despite using Retry if the bulkhead remains full while the retry is active.
    void
    Test that retries do not occur when BulkheadException is included in the abortOn attribute
    void
    Test that retries do not occur when BulkheadException is not included in the retryOn attribute
    void
    Test that when an execution is retried, it goes to the back of the bulkhead queue.
    void
    Test that when an execution is retried, it doesn't hold onto its bulkhead slot.

    Methods inherited from class org.jboss.arquillian.testng.Arquillian

    arquillianAfterClass, arquillianAfterSuite, arquillianAfterTest, arquillianArgumentProvider, arquillianBeforeClass, arquillianBeforeSuite, arquillianBeforeTest, run

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • BulkheadAsynchRetryTest

      public BulkheadAsynchRetryTest()
  • Method Details

    • deploy

      @Deployment public static org.jboss.shrinkwrap.api.spec.WebArchive deploy()
      This is the Arquillian deploy method that controls the contents of the war that contains all the tests.
      Returns:
      the test war "ftBulkheadAsynchTest.war"
    • testBulkheadExceptionThrownClassAsync

      public void testBulkheadExceptionThrownClassAsync()
      Test that we still get BulkheadExceptions despite using Retry if the bulkhead remains full while the retry is active.
    • testBulkheadExceptionThrownMethodAsync

      public void testBulkheadExceptionThrownMethodAsync()
      Test that we still get BulkheadExceptions despite using Retry if the bulkhead remains full while the retry is active.
    • testBulkheadExceptionRetriedMethodAsync

      public void testBulkheadExceptionRetriedMethodAsync()
      Test that bulkhead exceptions are retried with annotations on method
    • testBulkheadExceptionRetriedClassAsync

      public void testBulkheadExceptionRetriedClassAsync()
      Test that bulkhead exceptions are retried with annotations on class
    • testRetriesReenterBulkhead

      public void testRetriesReenterBulkhead()
      Test that when an execution is retried, it doesn't hold onto its bulkhead slot.

      This is particularly important if Retry is used with a long delay.

    • testRetriesJoinBackOfQueue

      public void testRetriesJoinBackOfQueue()
      Test that when an execution is retried, it goes to the back of the bulkhead queue.
    • testNoRetriesWithoutRetryOn

      public void testNoRetriesWithoutRetryOn() throws InterruptedException
      Test that retries do not occur when BulkheadException is not included in the retryOn attribute
      Throws:
      InterruptedException - if the test is interrupted
    • testNoRetriesWithAbortOn

      public void testNoRetriesWithAbortOn() throws InterruptedException
      Test that retries do not occur when BulkheadException is included in the abortOn attribute
      Throws:
      InterruptedException - if the test is interrupted