Skip to content

Commit 88fc4cc

Browse files
authored
Improve ArchUnit class name test (#2152)
1 parent 550a587 commit 88fc4cc

File tree

1 file changed

+5
-8
lines changed

1 file changed

+5
-8
lines changed

src/test/java/org/kohsuke/github/ArchTests.java

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
import static com.tngtech.archunit.core.domain.JavaCall.Predicates.target;
3838
import static com.tngtech.archunit.core.domain.JavaClass.Predicates.assignableTo;
3939
import static com.tngtech.archunit.core.domain.JavaClass.Predicates.resideInAPackage;
40+
import static com.tngtech.archunit.core.domain.JavaClass.Predicates.simpleNameContaining;
4041
import static com.tngtech.archunit.core.domain.JavaClass.Predicates.type;
4142
import static com.tngtech.archunit.core.domain.JavaMember.Predicates.declaredIn;
4243
import static com.tngtech.archunit.core.domain.JavaModifier.STATIC;
@@ -90,8 +91,6 @@ public boolean test(T input) {
9091
}
9192
}
9293

93-
private static final JavaClasses apacheCommons = new ClassFileImporter().importPackages("org.apache.commons.lang3");
94-
9594
private static final JavaClasses classFiles = new ClassFileImporter()
9695
.withImportOption(new ImportOption.DoNotIncludeTests())
9796
.importPackages("org.kohsuke.github");
@@ -197,8 +196,6 @@ public static <T> DescribedPredicate<T> unless(DescribedPredicate<? super T> fir
197196
return new UnlessPredicate(first, second);
198197
}
199198

200-
private DescribedPredicate<JavaField> and;
201-
202199
/**
203200
* Default constructor.
204201
*/
@@ -227,12 +224,12 @@ public void testRequireFollowingNamingConvention() {
227224
var notStaticFinalFields = DescribedPredicate.<JavaField>not(modifier(STATIC).and(modifier(STATIC)));
228225
var notEnumOrStaticFinalFields = DescribedPredicate.<JavaField>and(not(enumConstants()), notStaticFinalFields);
229226

230-
final ArchRule instanceFieldsShouldNotBePublic = fields().that(notEnumOrStaticFinalFields)
231-
.should(notHaveModifier(JavaModifier.PUBLIC))
227+
final ArchRule instanceFieldsShouldNotBePublic = noFields().that(notEnumOrStaticFinalFields)
228+
.should(haveModifier(JavaModifier.PUBLIC))
232229
.because("This project does not allow public instance fields.");
233230

234231
final ArchRule instanceFieldsShouldFollowConvention = noFields().that(notEnumOrStaticFinalFields)
235-
.should(haveNamesContainingUnless("_"))
232+
.should(have(nameContaining("_")))
236233
.because("This project follows standard java naming conventions for fields.");
237234

238235
@SuppressWarnings("AccessStaticViaInstance")
@@ -253,7 +250,7 @@ public void testRequireFollowingNamingConvention() {
253250
declaredIn(GHRelease.class).and(name("getPublished_at"))))
254251
.because(reason);
255252

256-
final ArchRule classesNotFollowingConvention = noClasses().should(haveNamesContainingUnless("_"))
253+
final ArchRule classesNotFollowingConvention = noClasses().should(have(simpleNameContaining("_")))
257254
.because(reason);
258255

259256
enumsShouldFollowConvention.check(classFiles);

0 commit comments

Comments
 (0)