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 java.lang.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 Summary

      Fields 
      Modifier and Type Field Description
      protected org.slf4j.Logger logger  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void afterEach​(org.junit.jupiter.api.extension.ExtensionContext context)  
      void beforeEach​(org.junit.jupiter.api.extension.ExtensionContext context)  
      protected AppEngine createAppEngine​(org.junit.jupiter.api.extension.ExtensionContext context)  
      protected org.junit.jupiter.api.extension.ExtensionContext.Store getStore​(org.junit.jupiter.api.extension.ExtensionContext context)  
      protected FlowableAppTestHelper getTestHelper​(org.junit.jupiter.api.extension.ExtensionContext context)  
      java.lang.Object resolveParameter​(org.junit.jupiter.api.extension.ParameterContext parameterContext, org.junit.jupiter.api.extension.ExtensionContext context)  
      boolean supportsParameter​(org.junit.jupiter.api.extension.ParameterContext parameterContext, org.junit.jupiter.api.extension.ExtensionContext context)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 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 java.lang.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)