Class ArchUnitTestEngine

java.lang.Object
org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine<com.tngtech.archunit.junit.internal.ArchUnitEngineExecutionContext>
com.tngtech.archunit.junit.internal.ArchUnitTestEngine
All Implemented Interfaces:
org.junit.platform.engine.TestEngine

@Internal public final class ArchUnitTestEngine extends org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine<com.tngtech.archunit.junit.internal.ArchUnitEngineExecutionContext>
A simple test engine to discover and execute ArchUnit tests with JUnit 5. In particular the engine uses a ClassCache to avoid the costly import process as much as possible.

Mark classes to be executed by the ArchUnitTestEngine with @AnalyzeClasses and rule fields or methods with @ArchTest. Example:

@AnalyzeClasses(packages = "com.foo")
 class MyArchTest {
    @ArchTest
     public static final ArchRule myRule = classes()...
 }
 
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected com.tngtech.archunit.junit.internal.ArchUnitEngineExecutionContext
    createExecutionContext(org.junit.platform.engine.ExecutionRequest request)
     
    org.junit.platform.engine.TestDescriptor
    discover(org.junit.platform.engine.EngineDiscoveryRequest discoveryRequest, org.junit.platform.engine.UniqueId uniqueId)
     
     

    Methods inherited from class org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine

    createExecutorService, createThrowableCollectorFactory, execute

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.junit.platform.engine.TestEngine

    getArtifactId, getGroupId, getVersion
  • Constructor Details

    • ArchUnitTestEngine

      public ArchUnitTestEngine()
  • Method Details

    • getId

      public String getId()
    • discover

      public org.junit.platform.engine.TestDescriptor discover(org.junit.platform.engine.EngineDiscoveryRequest discoveryRequest, org.junit.platform.engine.UniqueId uniqueId)
    • createExecutionContext

      protected com.tngtech.archunit.junit.internal.ArchUnitEngineExecutionContext createExecutionContext(org.junit.platform.engine.ExecutionRequest request)
      Specified by:
      createExecutionContext in class org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine<com.tngtech.archunit.junit.internal.ArchUnitEngineExecutionContext>