Skip to content

Commit

Permalink
fix(hcl2cdk): snapshot generated code instead of snapshotting that th…
Browse files Browse the repository at this point in the history
…e function returns a promise
  • Loading branch information
ansgarm authored and DanielMSchmidt committed Dec 5, 2022
1 parent 78f2eef commit 27ca9fa
Show file tree
Hide file tree
Showing 2 changed files with 96 additions and 9 deletions.
93 changes: 89 additions & 4 deletions packages/@cdktf/hcl2cdk/test/__snapshots__/hcl2cdk.test.ts.snap
@@ -1,9 +1,94 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP

exports[`convert Cross-Language Support supports csharp 1`] = `Promise {}`;
exports[`convert Cross-Language Support supports csharp 1`] = `
"/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
using Gen.Providers.Aws;
/*The following providers are missing schema information and might need manual adjustments to synthesize correctly: aws.
For a more precise conversion please use the --provider flag in convert.*/
var awsKmsKeyExamplekms = new KmsKey.KmsKey(this, \\"examplekms\\", new Struct {
Deletion_window_in_days = 7,
Description = \\"KMS key 1\\"
});
var awsS3BucketExamplebucket = new S3Bucket.S3Bucket(this, \\"examplebucket\\", new Struct {
Acl = \\"private\\",
Bucket = \\"examplebuckettftest\\"
});
new S3BucketObject.S3BucketObject(this, \\"examplebucket_object\\", new Struct {
Bucket = $\\"\\\\\\\\\${element({awsS3BucketExamplebucket.fqn}, 0).id}\\",
Key = \\"someobject\\",
Kms_key_id = awsKmsKeyExamplekms.Arn,
Source = \\"index.html\\"
});"
`;

exports[`convert Cross-Language Support supports java 1`] = `Promise {}`;
exports[`convert Cross-Language Support supports java 1`] = `
"/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import gen.providers.aws.*;
/*The following providers are missing schema information and might need manual adjustments to synthesize correctly: aws.
For a more precise conversion please use the --provider flag in convert.*/
Object awsKmsKeyExamplekms = KmsKey.Builder.create(this, \\"examplekms\\")
.deletion_window_in_days(7)
.description(\\"KMS key 1\\")
.build();
Object awsS3BucketExamplebucket = S3Bucket.Builder.create(this, \\"examplebucket\\")
.acl(\\"private\\")
.bucket(\\"examplebuckettftest\\")
.build();
S3BucketObject.Builder.create(this, \\"examplebucket_object\\")
.bucket(String.format(\\"\\\\\\\\\${element(%s, 0).id}\\", awsS3BucketExamplebucket.getFqn()))
.key(\\"someobject\\")
.kms_key_id(awsKmsKeyExamplekms.getArn())
.source(\\"index.html\\")
.build();"
`;

exports[`convert Cross-Language Support supports python 1`] = `Promise {}`;
exports[`convert Cross-Language Support supports python 1`] = `
"# Provider bindings are generated by running cdktf get.
# See https://cdk.tf/provider-generation for more details.
import ...gen.providers.aws as aws
# The following providers are missing schema information and might need manual adjustments to synthesize correctly: aws.
# For a more precise conversion please use the --provider flag in convert.
aws_kms_key_examplekms = aws.kms_key.KmsKey(self, \\"examplekms\\",
deletion_window_in_days=7,
description=\\"KMS key 1\\"
)
aws_s3_bucket_examplebucket = aws.s3_bucket.S3Bucket(self, \\"examplebucket\\",
acl=\\"private\\",
bucket=\\"examplebuckettftest\\"
)
aws.s3_bucket_object.S3BucketObject(self, \\"examplebucket_object\\",
bucket=f\\"\\\\\\\\\${element({awsS3BucketExamplebucket.fqn}, 0).id}\\",
key=\\"someobject\\",
kms_key_id=aws_kms_key_examplekms.arn,
source=\\"index.html\\"
)"
`;

exports[`convert Cross-Language Support supports typescript 1`] = `Promise {}`;
exports[`convert Cross-Language Support supports typescript 1`] = `
"/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as aws from \\"./.gen/providers/aws\\";
/*The following providers are missing schema information and might need manual adjustments to synthesize correctly: aws.
For a more precise conversion please use the --provider flag in convert.*/
const awsKmsKeyExamplekms = new aws.kmsKey.KmsKey(this, \\"examplekms\\", {
deletion_window_in_days: 7,
description: \\"KMS key 1\\",
});
const awsS3BucketExamplebucket = new aws.s3Bucket.S3Bucket(
this,
\\"examplebucket\\",
{
acl: \\"private\\",
bucket: \\"examplebuckettftest\\",
}
);
new aws.s3BucketObject.S3BucketObject(this, \\"examplebucket_object\\", {
bucket: \`\\\\\${element(\${awsS3BucketExamplebucket.fqn}, 0).id}\`,
key: \\"someobject\\",
kms_key_id: awsKmsKeyExamplekms.arn,
source: \\"index.html\\",
});
"
`;
12 changes: 7 additions & 5 deletions packages/@cdktf/hcl2cdk/test/hcl2cdk.test.ts
Expand Up @@ -5,7 +5,7 @@ import { convert } from "../lib/index";
describe("convert", () => {
const targetLanguages = ["typescript", "python", "csharp", "java"];
describe("Cross-Language Support", () => {
it.each(targetLanguages)("supports %s", (language) => {
it.each(targetLanguages)("supports %s", async (language) => {
const hcl = `
resource "aws_kms_key" "examplekms" {
description = "KMS key 1"
Expand All @@ -25,10 +25,12 @@ describe("convert", () => {
}
`;
expect(
convert(hcl, {
language: language as any,
providerSchema: {},
})
(
await convert(hcl, {
language: language as any,
providerSchema: {},
})
).all
).toMatchSnapshot();
});
});
Expand Down

0 comments on commit 27ca9fa

Please sign in to comment.