Skip to content

Commit f3bb827

Browse files
committed
chore: add basic unit test
1 parent 2fae4b8 commit f3bb827

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
@@ -508,7 +508,19 @@ public void skipsFilterOnEncounteringRecursiveShapes() {
508508
+ "})");
509509
}
510510

511+
@Test
512+
public void properlyGeneratesRequiredMessageMemberNotBackwardCompatible() {
513+
testStructureCodegenBase("test-required-member.smithy",
514+
"export interface GetFooOutput {\n"
515+
+ " someRequiredMember: string;\n"
516+
+ "}\n", false);
517+
}
518+
511519
private String testStructureCodegen(String file, String expectedType) {
520+
return testStructureCodegenBase(file, expectedType, true);
521+
}
522+
523+
private String testStructureCodegenBase(String file, String expectedType, boolean backwardCompatibleRequiredMember) {
512524
Model model = Model.assembler()
513525
.addImport(getClass().getResource(file))
514526
.assemble()
@@ -521,6 +533,7 @@ private String testStructureCodegen(String file, String expectedType) {
521533
.withMember("service", Node.from("smithy.example#Example"))
522534
.withMember("package", Node.from("example"))
523535
.withMember("packageVersion", Node.from("1.0.0"))
536+
.withMember("backwardCompatibleRequiredMember", Node.from(backwardCompatibleRequiredMember))
524537
.build())
525538
.build();
526539

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)