Skip to content

Commit 7c65e9c

Browse files
committed
chore: add integ test for doubly nested stack
1 parent 218e0af commit 7c65e9c

3 files changed

Lines changed: 28 additions & 4 deletions

File tree

packages/@aws-cdk-testing/cli-integ/resources/cdk-apps/app/app.js

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ if (process.env.PACKAGE_LAYOUT_VERSION === '1') {
3535
}
3636

3737
const { Annotations } = cdk;
38-
const { StackWithNestedStack, StackWithNestedStackUsingParameters } = require('./nested-stack');
38+
const { StackWithNestedStack, StackWithDoublyNestedStack, StackWithNestedStackUsingParameters } = require('./nested-stack');
3939

4040
const stackPrefix = process.env.STACK_NAME_PREFIX;
4141
if (!stackPrefix) {
@@ -176,7 +176,7 @@ class DependentStack extends Stack {
176176
super(scope, id);
177177

178178
const innerDependentStack = new InnerDependentStack(this, 'InnerDependentStack');
179-
179+
180180
this.addDependency(innerDependentStack);
181181
}
182182
}
@@ -204,7 +204,7 @@ class MigrateStack extends cdk.Stack {
204204
new cdk.CfnOutput(this, 'QueueUrl', {
205205
value: queue.queueUrl,
206206
});
207-
207+
208208
new cdk.CfnOutput(this, 'QueueLogicalId', {
209209
value: queue.node.defaultChild.logicalId,
210210
});
@@ -258,7 +258,7 @@ class ImportableStack extends cdk.Stack {
258258
new cdk.CfnOutput(this, 'QueueUrl', {
259259
value: queue.queueUrl,
260260
});
261-
261+
262262
new cdk.CfnOutput(this, 'QueueLogicalId', {
263263
value: queue.node.defaultChild.logicalId,
264264
});
@@ -844,6 +844,7 @@ switch (stackSet) {
844844

845845
new StackWithNestedStack(app, `${stackPrefix}-with-nested-stack`);
846846
new StackWithNestedStackUsingParameters(app, `${stackPrefix}-with-nested-stack-using-parameters`);
847+
new StackWithDoublyNestedStack(app, `${stackPrefix}-with-doubly-nested-stack`);
847848
new ListStack(app, `${stackPrefix}-list-stacks`)
848849
new ListMultipleDependentStack(app, `${stackPrefix}-list-multiple-dependent-stacks`);
849850

packages/@aws-cdk-testing/cli-integ/resources/cdk-apps/app/nested-stack.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,21 @@ class MyNestedStack extends cfn.NestedStack {
2525
}
2626
}
2727

28+
class DoublyNestedStack extends cfn.NestedStack {
29+
constructor(scope, id) {
30+
super(scope, id);
31+
32+
new MyNestedStack(this, 'Nestor');
33+
}
34+
}
35+
36+
class StackWithDoublyNestedStack extends Stack {
37+
constructor(scope, id) {
38+
super(scope, id);
39+
new DoublyNestedStack(this, 'DoubleDouble');
40+
}
41+
}
42+
2843
class StackWithNestedStackUsingParameters extends Stack {
2944
constructor(scope, id) {
3045
super(scope, id);
@@ -47,3 +62,4 @@ class MyNestedStackUsingParameters extends cfn.NestedStack {
4762

4863
exports.StackWithNestedStack = StackWithNestedStack;
4964
exports.StackWithNestedStackUsingParameters = StackWithNestedStackUsingParameters;
65+
exports.StackWithDoublyNestedStack = StackWithDoublyNestedStack;

packages/@aws-cdk-testing/cli-integ/tests/cli-integ-tests/cli.integtest.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -351,6 +351,13 @@ integTest(
351351
}),
352352
);
353353

354+
integTest('doubly nested stack',
355+
withDefaultFixture(async (fixture) => {
356+
await fixture.cdkDeploy('with-doubly-nested-stack', {
357+
captureStderr: false,
358+
});
359+
}));
360+
354361
integTest(
355362
'nested stack with parameters',
356363
withDefaultFixture(async (fixture) => {

0 commit comments

Comments
 (0)