diff --git a/application-test/app-test/src/test/java/com/example/apptest/study/ArchClassTests.java b/application-test/app-test/src/test/java/com/example/apptest/study/ArchClassTests.java new file mode 100644 index 00000000..84803434 --- /dev/null +++ b/application-test/app-test/src/test/java/com/example/apptest/study/ArchClassTests.java @@ -0,0 +1,32 @@ +package com.example.apptest.study; + +import com.example.apptest.App; +import com.tngtech.archunit.junit.AnalyzeClasses; +import com.tngtech.archunit.junit.ArchTest; +import com.tngtech.archunit.lang.syntax.ArchRuleDefinition; +import com.tngtech.archunit.lang.syntax.elements.ClassesShouldConjunction; + +import javax.persistence.Entity; + +@AnalyzeClasses(packagesOf = App.class) +public class ArchClassTests { + +// @ArchTest +// ClassesShouldConjunction controllerClassRule = +// ArchRuleDefinition.classes().that().haveSimpleNameEndingWith("Controller") +// .should().accessClassesThat().haveSimpleNameEndingWith("Service") +// .orShould().accessClassesThat().haveSimpleNameEndingWith("Repository"); + +// @ArchTest +// ClassesShouldConjunction repositoryClassRule = +// ArchRuleDefinition.noClasses().that().haveSimpleNameEndingWith("Repository") +// .should().accessClassesThat().haveSimpleNameEndingWith("Service") +// .orShould().accessClassesThat().haveSimpleNameEndingWith("Controller"); + + @ArchTest + ClassesShouldConjunction studyClassesRule = + ArchRuleDefinition.classes().that().haveSimpleNameStartingWith("Study") + .and().areNotEnums() + .and().areNotAnnotatedWith(Entity.class) + .should().resideInAnyPackage("..study.."); +} diff --git a/application-test/app-test/src/test/java/com/example/apptest/study/ArchJUnitTest.java b/application-test/app-test/src/test/java/com/example/apptest/study/ArchJUnitTests.java similarity index 81% rename from application-test/app-test/src/test/java/com/example/apptest/study/ArchJUnitTest.java rename to application-test/app-test/src/test/java/com/example/apptest/study/ArchJUnitTests.java index 4975fbb5..37fddd77 100644 --- a/application-test/app-test/src/test/java/com/example/apptest/study/ArchJUnitTest.java +++ b/application-test/app-test/src/test/java/com/example/apptest/study/ArchJUnitTests.java @@ -13,7 +13,7 @@ import org.junit.jupiter.api.Test; // App.class 가 있는 패키지 선택 @AnalyzeClasses(packagesOf = App.class) -public class ArchJUnitTest { +public class ArchJUnitTests { // 룰 정의 후 테스트 @ArchTest @@ -26,11 +26,13 @@ public class ArchJUnitTest { .should().accessClassesThat().resideInAPackage("..study.."); @ArchTest - ClassesShouldConjunction memberPackageRule = ArchRuleDefinition.noClasses().that().resideInAPackage("..domain..") + ClassesShouldConjunction memberPackageRule = + ArchRuleDefinition.noClasses().that().resideInAPackage("..domain..") .should().accessClassesThat().resideInAnyPackage("..member.."); @ArchTest - ClassesShouldConjunction domainPackageRule = ArchRuleDefinition.classes().that().resideInAPackage("..domain..") + ClassesShouldConjunction domainPackageRule = + ArchRuleDefinition.classes().that().resideInAPackage("..domain..") .should().onlyBeAccessed().byClassesThat().resideInAnyPackage("..study..", "..member..", "..domain.."); } diff --git a/application-test/app-test/src/test/java/com/example/apptest/FastTest.java b/application-test/app-test/src/test/java/com/example/apptest/study/FastTest.java similarity index 90% rename from application-test/app-test/src/test/java/com/example/apptest/FastTest.java rename to application-test/app-test/src/test/java/com/example/apptest/study/FastTest.java index 2412cd40..b1eece4c 100644 --- a/application-test/app-test/src/test/java/com/example/apptest/FastTest.java +++ b/application-test/app-test/src/test/java/com/example/apptest/study/FastTest.java @@ -1,4 +1,4 @@ -package com.example.apptest; +package com.example.apptest.study; import org.junit.jupiter.api.Tag; import org.junit.jupiter.api.Test; diff --git a/application-test/app-test/src/test/java/com/example/apptest/FindSlowTestExtension.java b/application-test/app-test/src/test/java/com/example/apptest/study/FindSlowTestExtension.java similarity index 98% rename from application-test/app-test/src/test/java/com/example/apptest/FindSlowTestExtension.java rename to application-test/app-test/src/test/java/com/example/apptest/study/FindSlowTestExtension.java index 358b562d..82673ce3 100644 --- a/application-test/app-test/src/test/java/com/example/apptest/FindSlowTestExtension.java +++ b/application-test/app-test/src/test/java/com/example/apptest/study/FindSlowTestExtension.java @@ -1,4 +1,4 @@ -package com.example.apptest; +package com.example.apptest.study; import org.junit.jupiter.api.extension.AfterTestExecutionCallback; import org.junit.jupiter.api.extension.BeforeTestExecutionCallback; diff --git a/application-test/app-test/src/test/java/com/example/apptest/FindSlowTestExtension_2.java b/application-test/app-test/src/test/java/com/example/apptest/study/FindSlowTestExtension_2.java similarity index 98% rename from application-test/app-test/src/test/java/com/example/apptest/FindSlowTestExtension_2.java rename to application-test/app-test/src/test/java/com/example/apptest/study/FindSlowTestExtension_2.java index 64727fd6..0c0df4a3 100644 --- a/application-test/app-test/src/test/java/com/example/apptest/FindSlowTestExtension_2.java +++ b/application-test/app-test/src/test/java/com/example/apptest/study/FindSlowTestExtension_2.java @@ -1,4 +1,4 @@ -package com.example.apptest; +package com.example.apptest.study; import org.junit.jupiter.api.extension.AfterTestExecutionCallback; import org.junit.jupiter.api.extension.BeforeTestExecutionCallback; diff --git a/application-test/app-test/src/test/java/com/example/apptest/SlowTest.java b/application-test/app-test/src/test/java/com/example/apptest/study/SlowTest.java similarity index 90% rename from application-test/app-test/src/test/java/com/example/apptest/SlowTest.java rename to application-test/app-test/src/test/java/com/example/apptest/study/SlowTest.java index a997afa5..b39aca19 100644 --- a/application-test/app-test/src/test/java/com/example/apptest/SlowTest.java +++ b/application-test/app-test/src/test/java/com/example/apptest/study/SlowTest.java @@ -1,4 +1,4 @@ -package com.example.apptest; +package com.example.apptest.study; import org.junit.jupiter.api.Tag; import org.junit.jupiter.api.Test; diff --git a/application-test/app-test/src/test/java/com/example/apptest/StudyExtensionTest.java b/application-test/app-test/src/test/java/com/example/apptest/study/StudyExtensionTest.java similarity index 97% rename from application-test/app-test/src/test/java/com/example/apptest/StudyExtensionTest.java rename to application-test/app-test/src/test/java/com/example/apptest/study/StudyExtensionTest.java index 34d7c4b0..dab87b83 100644 --- a/application-test/app-test/src/test/java/com/example/apptest/StudyExtensionTest.java +++ b/application-test/app-test/src/test/java/com/example/apptest/study/StudyExtensionTest.java @@ -1,4 +1,4 @@ -package com.example.apptest; +package com.example.apptest.study; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; diff --git a/application-test/app-test/src/test/java/com/example/apptest/StudyJUnit4Test.java b/application-test/app-test/src/test/java/com/example/apptest/study/StudyJUnit4Test.java similarity index 88% rename from application-test/app-test/src/test/java/com/example/apptest/StudyJUnit4Test.java rename to application-test/app-test/src/test/java/com/example/apptest/study/StudyJUnit4Test.java index a94414a0..56f2287f 100644 --- a/application-test/app-test/src/test/java/com/example/apptest/StudyJUnit4Test.java +++ b/application-test/app-test/src/test/java/com/example/apptest/study/StudyJUnit4Test.java @@ -1,4 +1,4 @@ -package com.example.apptest; +package com.example.apptest.study; import org.junit.Before; import org.junit.Test; diff --git a/application-test/app-test/src/test/java/com/example/apptest/StudyTest.java b/application-test/app-test/src/test/java/com/example/apptest/study/StudyTest.java similarity index 99% rename from application-test/app-test/src/test/java/com/example/apptest/StudyTest.java rename to application-test/app-test/src/test/java/com/example/apptest/study/StudyTest.java index 80e2fbcf..567a8e23 100644 --- a/application-test/app-test/src/test/java/com/example/apptest/StudyTest.java +++ b/application-test/app-test/src/test/java/com/example/apptest/study/StudyTest.java @@ -1,4 +1,4 @@ -package com.example.apptest; +package com.example.apptest.study; import org.junit.jupiter.api.*; import org.junit.jupiter.api.condition.*;