Class FlowableAppExtension

  • All Implemented Interfaces:
    org.junit.jupiter.api.extension.AfterEachCallback, org.junit.jupiter.api.extension.BeforeEachCallback, org.junit.jupiter.api.extension.Extension, org.junit.jupiter.api.extension.ParameterResolver

    public class FlowableAppExtension
    extends Object
    implements org.junit.jupiter.api.extension.ParameterResolver, org.junit.jupiter.api.extension.BeforeEachCallback, org.junit.jupiter.api.extension.AfterEachCallback
    JUnit Jupiter extension for the Flowable AppEngine and services initialization.

    Usage:

     @ExtendWith(FlowableAppExtension.class)
     class YourTest {
    
       @BeforeEach
       void setUp(AppEngine appEngine) {
           ...
       }
    
       @Test
       void myTest(AppRepositoryService appRepositoryService) {
           ...
       }
    
       ...
     }
     

    The AppEngine and the services will be made available to the test class through the parameter resolution (BeforeEach, AfterEach, test methods). The AppEngine will be fetched as a bean through the SpringExtension

    You can declare a deployment with the AppDeployment annotation. This extension will make sure that this deployment gets deployed before the setUp and AppRepositoryService.deleteDeployment(String, boolean) deleted} after the tearDown. The id of the deployment can be accessed by using AppDeploymentId in a test method.

    • Field Detail

      • logger

        protected final org.slf4j.Logger logger
    • Constructor Detail

      • FlowableAppExtension

        public FlowableAppExtension()
    • Method Detail

      • beforeEach

        public void beforeEach​(org.junit.jupiter.api.extension.ExtensionContext context)
        Specified by:
        beforeEach in interface org.junit.jupiter.api.extension.BeforeEachCallback
      • afterEach

        public void afterEach​(org.junit.jupiter.api.extension.ExtensionContext context)
        Specified by:
        afterEach in interface org.junit.jupiter.api.extension.AfterEachCallback
      • supportsParameter

        public boolean supportsParameter​(org.junit.jupiter.api.extension.ParameterContext parameterContext,
                                         org.junit.jupiter.api.extension.ExtensionContext context)
        Specified by:
        supportsParameter in interface org.junit.jupiter.api.extension.ParameterResolver
      • resolveParameter

        public Object resolveParameter​(org.junit.jupiter.api.extension.ParameterContext parameterContext,
                                       org.junit.jupiter.api.extension.ExtensionContext context)
        Specified by:
        resolveParameter in interface org.junit.jupiter.api.extension.ParameterResolver
      • getTestHelper

        protected FlowableAppTestHelper getTestHelper​(org.junit.jupiter.api.extension.ExtensionContext context)
      • createAppEngine

        protected AppEngine createAppEngine​(org.junit.jupiter.api.extension.ExtensionContext context)
      • getStore

        protected org.junit.jupiter.api.extension.ExtensionContext.Store getStore​(org.junit.jupiter.api.extension.ExtensionContext context)