Skip to content

Commit dd57509

Browse files
committed
Add test for list / map as structure member
1 parent df7a01d commit dd57509

4 files changed

Lines changed: 39 additions & 2 deletions

File tree

smithy-trait-codegen/src/test/java/software/amazon/smithy/traitcodegen/integrations/annotations/AnnotationsTest.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ void unstableAnnotationOnEnumVariant() {
131131
}
132132

133133
@Test
134-
void deprecatedAnnotationOnList() {
134+
void deprecatedAnnotationOnListTrait() {
135135
String fileContents = getFileContentsFromShapeName("DeprecatedList", true);
136136
String expected = "@Deprecated\n" +
137137
"@SmithyGenerated\n" +
@@ -148,7 +148,7 @@ void noDeprecatedAnnotationOnListGetValues() {
148148
}
149149

150150
@Test
151-
void deprecatedAnnotationOnMap() {
151+
void deprecatedAnnotationOnMapTrait() {
152152
String fileContents = getFileContentsFromShapeName("DeprecatedMap", true);
153153
String expected = "@Deprecated\n" +
154154
"@SmithyGenerated\n" +
@@ -164,6 +164,15 @@ void noDeprecatedAnnotationOnMapGetValues() {
164164
assertTrue(fileContents.contains(expected));
165165
}
166166

167+
@Test
168+
void deprecatedAnnotationOnListMember() {
169+
String fileContents = getFileContentsFromShapeName("DeprecatedStructure", true);
170+
String expected = " @Deprecated\n" +
171+
" public Optional<Map<String, Integer>> getDeprecatedMap() {";
172+
assertTrue(fileContents.contains(expected));
173+
}
174+
175+
167176
private String getFileContentsFromShapeName(String className, boolean isTrait) {
168177
String suffix = isTrait ? "Trait" : "";
169178
String path = String.format("com/example/traits/%s%s.java", className, suffix);

smithy-trait-codegen/src/test/java/software/amazon/smithy/traitcodegen/integrations/javadoc/JavadocTest.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,19 @@ void deprecatedAnnotationAndNoteForMapTrait() {
265265
assertTrue(fileContents.contains(expectedForGetter));
266266
}
267267

268+
@Test
269+
void deprecatedAnnotationAndNoteForListMember() {
270+
String fileContents = getFileContentsFromShapeName("DeprecatedStructure", true);
271+
String expected = " /**\n" +
272+
" * @deprecated As of yesterday. A message\n" +
273+
" */\n" +
274+
" @Deprecated\n" +
275+
" public Optional<List<Integer>> getDeprecatedList() {\n" +
276+
" return Optional.ofNullable(deprecatedList);\n" +
277+
" }";
278+
assertTrue(fileContents.contains(expected));
279+
}
280+
268281
private String getFileContentsFromShapeName(String className, boolean isTrait) {
269282
String suffix = isTrait ? "Trait" : "";
270283
String path = String.format("com/example/traits/%s%s.java", className, suffix);

smithy-trait-codegen/src/test/resources/software/amazon/smithy/traitcodegen/integrations/annotations/annotations-test.smithy

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,14 @@ structure DeprecatedStructure {
2020
/// Has docs in addition to deprecated
2121
@deprecated
2222
deprecatedWithDocs: String
23+
24+
@deprecated
25+
deprecatedMap: MemberMap
26+
}
27+
28+
map MemberMap {
29+
key: String
30+
value: Integer
2331
}
2432

2533
@trait

smithy-trait-codegen/src/test/resources/software/amazon/smithy/traitcodegen/integrations/javadoc/javadoc-test.smithy

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,13 @@ structure DeprecatedStructure {
3131
/// Has docs in addition to deprecated
3232
@deprecated(message: "A message", since: "yesterday")
3333
deprecatedWithDocs: String
34+
35+
@deprecated(message: "A message", since: "yesterday")
36+
deprecatedList: MemberList
37+
}
38+
39+
list MemberList {
40+
member: Integer
3441
}
3542

3643
@trait

0 commit comments

Comments
 (0)