Class ArchTests

java.lang.Object
com.tngtech.archunit.junit.ArchTests

@PublicAPI(usage=ACCESS) public final class ArchTests extends Object
Includes all @ArchTest annotated members of another class into this ArchUnit test. For example

 class MyArchRuleSuite1 {
    @ArchTest
     static final ArchRule suite1Rule1 = classes()...

    @ArchTest
     static void suite1Rule2(JavaClasses classes) {
         // ...
     }
 }

 class MyArchRuleSuite2 {
    @ArchTest
     static final ArchRule suite2Rule1 = classes()...
 }

@AnalyzeClasses(..)
 class MyArchitectureTest {
     // includes all@ArchTest members from MyArchRuleSuite1
    @ArchTest
     static final ArchTests includedRules1 = ArchTests.in(MyArchRuleSuite1.class);

     // includes all@ArchTest members from MyArchRuleSuite2
    @ArchTest
     static final ArchTests includedRules2 = ArchTests.in(MyArchRuleSuite2.class);
 }
 
  • Method Details

    • in

      @PublicAPI(usage=ACCESS) public static ArchTests in(Class<?> definitionLocation)
      Parameters:
      definitionLocation - The class whose `@ArchTest` members should be included in this test
      Returns:
      the ArchTests of the supplied class
    • getDefinitionLocation

      @Internal public Class<?> getDefinitionLocation()