Skip to content

Commit 6cc43d3

Browse files
committed
Test
1 parent ac08cec commit 6cc43d3

File tree

4 files changed

+38
-51
lines changed

4 files changed

+38
-51
lines changed

test/architecture-tests/src/test/java/software/amazon/awssdk/archtests/CodingConventionTest.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@
4949
import software.amazon.awssdk.annotations.SdkProtectedApi;
5050
import software.amazon.awssdk.annotations.SdkPublicApi;
5151

52-
@AnalyzeClasses(packages = "software.amazon.awssdk..",
52+
@AnalyzeClasses(packages = "software.amazon.awssdk",
5353
importOptions = ImportOption.DoNotIncludeTests.class)
5454
@ArchIgnore
5555
public class CodingConventionTest {

test/architecture-tests/src/test/java/software/amazon/awssdk/archtests/CodingConventionWithSuppressionTest.java

+35-43
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717

1818
import static com.tngtech.archunit.lang.syntax.ArchRuleDefinition.classes;
1919
import static com.tngtech.archunit.lang.syntax.ArchRuleDefinition.methods;
20-
import static com.tngtech.archunit.lang.syntax.ArchRuleDefinition.noClasses;
2120
import static com.tngtech.archunit.lang.syntax.ArchRuleDefinition.noFields;
2221
import static com.tngtech.archunit.lang.syntax.ArchRuleDefinition.noMethods;
2322
import static com.tngtech.archunit.library.freeze.FreezingArchRule.freeze;
@@ -37,7 +36,6 @@
3736
import java.util.HashSet;
3837
import java.util.Optional;
3938
import java.util.Set;
40-
import java.util.concurrent.Future;
4139
import java.util.regex.Pattern;
4240
import org.junit.jupiter.api.Test;
4341
import software.amazon.awssdk.annotations.SdkPublicApi;
@@ -78,59 +76,51 @@ void publicApisShouldBeFinal() {
7876
.should().haveModifier(JavaModifier.FINAL))
7977
.because("public APIs SHOULD be final")
8078
.check(classes);
79+
System.out.println("publicApisShouldBeFinal finished");
8180
}
8281

83-
@Test
84-
void shouldNotUseFuture() {
85-
System.out.println("shouldNotUseFuture");
86-
JavaClasses classes = new ClassFileImporter()
87-
.withImportOptions(Arrays.asList(new ImportOption.Predefined.DoNotIncludeTests()))
88-
.importPackages("software.amazon.awssdk");
89-
freeze(noClasses().should().dependOnClassesThat().areAssignableFrom(Future.class)
90-
.as("use java.util.concurrent.Future")
91-
.because("Future SHOULD NOT be used, use CompletableFuture instead"))
92-
.check(classes);
93-
}
94-
95-
@Test
96-
void shouldNotUseOptionalForFields() {
97-
System.out.println("shouldNotUseOptionalForFields");
98-
JavaClasses classes = new ClassFileImporter()
99-
.withImportOptions(Arrays.asList(new ImportOption.Predefined.DoNotIncludeTests()))
100-
.importPackages("software.amazon.awssdk");
101-
freeze(noFields().should().haveRawType(Optional.class)
102-
.as("use Optional for fields")
103-
.because("Optional SHOULD NOT be used for method parameters. See "
104-
+ "https://github.com/aws/aws-sdk-java-v2/blob/master/docs"
105-
+ "/design/UseOfOptional.md"))
106-
.check(classes);
107-
}
108-
109-
@Test
110-
void mustNotUseOptionalForMethodParam() {
111-
System.out.println("mustNotUseOptionalForMethodParam");
112-
JavaClasses classes = new ClassFileImporter()
113-
.withImportOptions(Arrays.asList(new ImportOption.Predefined.DoNotIncludeTests()))
114-
.importPackages("software.amazon.awssdk");
115-
freeze(noMethods().should().haveRawParameterTypes(Optional.class)
116-
.as("use Optional for method parameters")
117-
.because("Optional MUST NOT be used for method parameters. See "
118-
+ "https://github.com/aws/aws-sdk-java-v2/blob/master/docs/design/UseOfOptional.md"))
119-
.check(classes);
120-
}
82+
// @Test
83+
// void shouldNotUseOptionalForFields() {
84+
// System.out.println("shouldNotUseOptionalForFields");
85+
// JavaClasses classes = new ClassFileImporter()
86+
// .withImportOptions(Arrays.asList(new ImportOption.Predefined.DoNotIncludeTests()))
87+
// .importPackages("software.amazon.awssdk");
88+
// freeze(noFields().should().haveRawType(Optional.class)
89+
// .as("use Optional for fields")
90+
// .because("Optional SHOULD NOT be used for method parameters. See "
91+
// + "https://github.com/aws/aws-sdk-java-v2/blob/master/docs"
92+
// + "/design/UseOfOptional.md"))
93+
// .check(classes);
94+
// System.out.println("shouldNotUseOptionalForFields finished");
95+
// }
96+
97+
// @Test
98+
// void mustNotUseOptionalForMethodParam() {
99+
// System.out.println("mustNotUseOptionalForMethodParam");
100+
// JavaClasses classes = new ClassFileImporter()
101+
// .withImportOptions(Arrays.asList(new ImportOption.Predefined.DoNotIncludeTests()))
102+
// .importPackages("software.amazon.awssdk");
103+
// freeze(noMethods().should().haveRawParameterTypes(Optional.class)
104+
// .as("use Optional for method parameters")
105+
// .because("Optional MUST NOT be used for method parameters. See "
106+
// + "https://github.com/aws/aws-sdk-java-v2/blob/master/docs/design/UseOfOptional.md"))
107+
// .check(classes);
108+
// System.out.println("mustNotUseOptionalForMethodParam finished");
109+
// }
121110

122111
@Test
123112
void publicApisMustNotDeclareThrowableOfCheckedException() {
124113
System.out.println("publicApisMustNotDeclareThrowableOfCheckedException");
125114
JavaClasses classes = new ClassFileImporter()
126115
.withImportOptions(Arrays.asList(new ImportOption.Predefined.DoNotIncludeTests()))
127116
.importPackages("software.amazon.awssdk");
128-
freeze(noMethods().that()
117+
freeze(noMethods().that().arePublic().and()
129118
.areDeclaredInClassesThat().areAnnotatedWith(SdkPublicApi.class)
130119
.should()
131120
.declareThrowableOfType(Exception.class).orShould().declareThrowableOfType(IOException.class)
132121
.because("public APIs MUST NOT throw checked exception"))
133122
.check(classes);
123+
System.out.println("publicApisMustNotDeclareThrowableOfCheckedException finished");
134124
}
135125

136126
@Test
@@ -140,7 +130,7 @@ void shouldNotAbuseWarnLog() {
140130
.withImportOptions(Arrays.asList(
141131
location -> ALLOWED_WARN_LOG_SUPPRESSION.stream().noneMatch(location::matches),
142132
new ImportOption.Predefined.DoNotIncludeTests()))
143-
.importPackages("software.amazon.awssdk..");
133+
.importPackages("software.amazon.awssdk");
144134

145135
ArchRule rule =
146136
freeze(methods().that().areDeclaredIn(Logger.class).and()
@@ -150,6 +140,7 @@ void shouldNotAbuseWarnLog() {
150140
+ " to ALLOWED_WARN_LOG_SUPPRESSION allowlist");
151141

152142
rule.check(classes);
143+
System.out.println("shouldNotAbuseWarnLog finished");
153144
}
154145

155146
@Test
@@ -159,7 +150,7 @@ void shouldNotAbuseErrorLog() {
159150
.withImportOptions(Arrays.asList(
160151
location -> ALLOWED_ERROR_LOG_SUPPRESSION.stream().noneMatch(location::matches),
161152
new ImportOption.Predefined.DoNotIncludeTests()))
162-
.importPackages("software.amazon.awssdk..");
153+
.importPackages("software.amazon.awssdk");
163154

164155
ArchRule rule =
165156
freeze(methods().that().areDeclaredIn(Logger.class).and()
@@ -168,6 +159,7 @@ void shouldNotAbuseErrorLog() {
168159
+ "ALLOWED_ERROR_LOG_SUPPRESSION allowlist");
169160

170161
rule.check(classes);
162+
System.out.println("shouldNotAbuseErrorLog finished");
171163
}
172164

173165
private static final class MethodBeingUsedByOthers extends ArchCondition<JavaMethod> {

test/architecture-tests/src/test/java/software/amazon/awssdk/archtests/NamingConventionTest.java

+1-6
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,9 @@
2222
import com.tngtech.archunit.junit.AnalyzeClasses;
2323
import com.tngtech.archunit.junit.ArchTest;
2424
import com.tngtech.archunit.lang.ArchRule;
25-
import java.util.Arrays;
26-
import java.util.HashSet;
27-
import java.util.Set;
28-
import java.util.function.Supplier;
29-
import java.util.regex.Pattern;
3025
import software.amazon.awssdk.awscore.presigner.SdkPresigner;
3126

32-
@AnalyzeClasses(packages = "software.amazon.awssdk..")
27+
@AnalyzeClasses(packages = "software.amazon.awssdk")
3328
public class NamingConventionTest {
3429

3530
@ArchTest

test/architecture-tests/src/test/java/software/amazon/awssdk/archtests/NamingConventionWithSuppressionTest.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ void supplierImpl_shouldHaveSupplierSuffix() {
5454
.withImportOptions(Arrays.asList(
5555
location -> ALLOWED_SUPPLIER_SUPPRESSION.stream().noneMatch(location::matches),
5656
new ImportOption.Predefined.DoNotIncludeTests()))
57-
.importPackages("software.amazon.awssdk..");
57+
.importPackages("software.amazon.awssdk");
5858

5959
ArchRule rule =
6060
classes().that().implement(Supplier.class).and().areNotPackagePrivate().should().haveSimpleNameEndingWith(

0 commit comments

Comments
 (0)