Class FlowableTestCase

java.lang.Object
junit.framework.Assert
junit.framework.TestCase
org.flowable.engine.test.FlowableTestCase
All Implemented Interfaces:
junit.framework.Test

public abstract class FlowableTestCase extends junit.framework.TestCase
Convenience for ProcessEngine and services initialization in the form of a JUnit base class.

Usage: public class YourTest extends FlowableTestCase

The ProcessEngine and the services available to subclasses through protected member fields. The processEngine will be initialized by default with the flowable.cfg.xml resource on the classpath. To specify a different configuration file, override the getConfigurationResource() method. Process engines will be cached statically. The first time the setUp is called for a given configuration resource, the process engine will be constructed.

You can declare a deployment with the Deployment annotation. This base class will make sure that this deployment gets deployed in the setUp and cascade deleted in the tearDown.

This class also lets you set the current time used by the process engine. This can be handy to control the exact time that is used by the engine in order to verify e.g. e.g. due dates of timers. Or start, end and duration times in the history service. In the tearDown, the internal clock will automatically be reset to use the current system time rather then the time that was set during a test method.

Author:
Tom Baeyens
  • Field Details

    • configurationResource

      protected String configurationResource
    • deploymentId

      protected String deploymentId
    • processEngineConfiguration

      protected org.flowable.engine.impl.cfg.ProcessEngineConfigurationImpl processEngineConfiguration
    • processEngine

      protected ProcessEngine processEngine
    • repositoryService

      protected RepositoryService repositoryService
    • runtimeService

      protected RuntimeService runtimeService
    • taskService

      protected TaskService taskService
    • historicDataService

      protected HistoryService historicDataService
    • identityService

      protected IdentityService identityService
    • managementService

      protected ManagementService managementService
    • formService

      protected FormService formService
  • Constructor Details

    • FlowableTestCase

      public FlowableTestCase()
      uses 'flowable.cfg.xml' as it's configuration resource
  • Method Details

    • assertProcessEnded

      public void assertProcessEnded(String processInstanceId)
    • setUp

      protected void setUp() throws Exception
      Overrides:
      setUp in class junit.framework.TestCase
      Throws:
      Exception
    • runTest

      protected void runTest() throws Throwable
      Overrides:
      runTest in class junit.framework.TestCase
      Throws:
      Throwable
    • initializeProcessEngine

      protected void initializeProcessEngine()
    • initializeServices

      protected void initializeServices()
    • initializeMockSupport

      protected void initializeMockSupport()
    • getEventRepositoryService

      protected org.flowable.eventregistry.api.EventRepositoryService getEventRepositoryService()
    • getEventRegistry

      protected org.flowable.eventregistry.api.EventRegistry getEventRegistry()
    • getEventRegistryEngineConfiguration

      protected org.flowable.eventregistry.impl.EventRegistryEngineConfiguration getEventRegistryEngineConfiguration()
    • tearDown

      protected void tearDown() throws Exception
      Overrides:
      tearDown in class junit.framework.TestCase
      Throws:
      Exception
    • closeProcessEngines

      public static void closeProcessEngines()
    • setCurrentTime

      public void setCurrentTime(Date currentTime)
    • getConfigurationResource

      public String getConfigurationResource()
    • setConfigurationResource

      public void setConfigurationResource(String configurationResource)
    • getMockSupport

      public FlowableMockSupport getMockSupport()
    • mockSupport

      public FlowableMockSupport mockSupport()