Skip to content

Commit d456dae

Browse files
committed
chore: add basic unit test
1 parent f6e6b5b commit d456dae

File tree

2 files changed

+30
-0
lines changed

2 files changed

+30
-0
lines changed

smithy-typescript-codegen/src/test/java/software/amazon/smithy/typescript/codegen/StructureGeneratorTest.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -551,7 +551,19 @@ public void skipsFilterOnEncounteringRecursiveShapes() {
551551
+ " })\n");
552552
}
553553

554+
@Test
555+
public void properlyGeneratesRequiredMessageMemberNotBackwardCompatible() {
556+
testStructureCodegenBase("test-required-member.smithy",
557+
"export interface GetFooOutput {\n"
558+
+ " someRequiredMember: string;\n"
559+
+ "}\n", false);
560+
}
561+
554562
private String testStructureCodegen(String file, String expectedType) {
563+
return testStructureCodegenBase(file, expectedType, true);
564+
}
565+
566+
private String testStructureCodegenBase(String file, String expectedType, boolean backwardCompatibleRequiredMember) {
555567
Model model = Model.assembler()
556568
.addImport(getClass().getResource(file))
557569
.assemble()
@@ -564,6 +576,7 @@ private String testStructureCodegen(String file, String expectedType) {
564576
.withMember("service", Node.from("smithy.example#Example"))
565577
.withMember("package", Node.from("example"))
566578
.withMember("packageVersion", Node.from("1.0.0"))
579+
.withMember("backwardCompatibleRequiredMember", Node.from(backwardCompatibleRequiredMember))
567580
.build())
568581
.build();
569582

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
namespace smithy.example
2+
3+
service Example {
4+
version: "1.0.0",
5+
operations: [GetFoo]
6+
}
7+
8+
operation GetFoo {
9+
input: GetFooInput,
10+
output: GetFooOutput
11+
}
12+
13+
structure GetFooInput {}
14+
structure GetFooOutput {
15+
@required
16+
someRequiredMember: String
17+
}

0 commit comments

Comments
 (0)