tfts 0.2.6 → 0.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/codegen/__tests__/fixtures.d.ts +6 -4
- package/dist/src/codegen/__tests__/fixtures.d.ts.map +1 -1
- package/dist/src/codegen/__tests__/fixtures.js +56 -0
- package/dist/src/codegen/__tests__/fixtures.js.map +1 -1
- package/dist/src/codegen/__tests__/generator.spec.js +108 -41
- package/dist/src/codegen/__tests__/generator.spec.js.map +1 -1
- package/dist/src/codegen/generator.d.ts.map +1 -1
- package/dist/src/codegen/generator.js +210 -184
- package/dist/src/codegen/generator.js.map +1 -1
- package/dist/src/codegen/raw-schema.d.ts +38 -0
- package/dist/src/codegen/raw-schema.d.ts.map +1 -0
- package/dist/src/codegen/raw-schema.js +3 -0
- package/dist/src/codegen/raw-schema.js.map +1 -0
- package/dist/src/codegen/schema.d.ts +25 -1
- package/dist/src/codegen/schema.d.ts.map +1 -1
- package/dist/src/codegen/schema.js +20 -9
- package/dist/src/codegen/schema.js.map +1 -1
- package/dist/src/core/tokens.d.ts +15 -0
- package/dist/src/core/tokens.d.ts.map +1 -1
- package/dist/src/core/tokens.js +35 -0
- package/dist/src/core/tokens.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export declare const simpleProvider:
|
|
3
|
-
export declare const multiwordProvider:
|
|
4
|
-
export declare const nestingModesProvider:
|
|
1
|
+
import type { RawProviderSchema } from "../raw-schema.js";
|
|
2
|
+
export declare const simpleProvider: RawProviderSchema;
|
|
3
|
+
export declare const multiwordProvider: RawProviderSchema;
|
|
4
|
+
export declare const nestingModesProvider: RawProviderSchema;
|
|
5
|
+
export declare const computedListProvider: RawProviderSchema;
|
|
6
|
+
export declare const computedListAttrProvider: RawProviderSchema;
|
|
5
7
|
//# sourceMappingURL=fixtures.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../../../src/codegen/__tests__/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../../../src/codegen/__tests__/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,eAAO,MAAM,cAAc,EAAE,iBA4D5B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,iBAyB/B,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,iBA+ClC,CAAC;AAGF,eAAO,MAAM,oBAAoB,EAAE,iBA6BlC,CAAC;AAIF,eAAO,MAAM,wBAAwB,EAAE,iBAsBtC,CAAC"}
|
|
@@ -133,4 +133,60 @@ export const nestingModesProvider = {
|
|
|
133
133
|
},
|
|
134
134
|
},
|
|
135
135
|
};
|
|
136
|
+
// Fixture for computed list/object attributes (like google_cloud_run_service.status)
|
|
137
|
+
export const computedListProvider = {
|
|
138
|
+
format_version: "1.0",
|
|
139
|
+
provider_schemas: {
|
|
140
|
+
"registry.terraform.io/hashicorp/google": {
|
|
141
|
+
provider: { version: 0, block: { attributes: {} } },
|
|
142
|
+
resource_schemas: {
|
|
143
|
+
google_cloud_run_service: {
|
|
144
|
+
version: 0,
|
|
145
|
+
block: {
|
|
146
|
+
attributes: {
|
|
147
|
+
id: { type: "string", computed: true },
|
|
148
|
+
name: { type: "string", required: true },
|
|
149
|
+
},
|
|
150
|
+
block_types: {
|
|
151
|
+
status: {
|
|
152
|
+
nesting_mode: "list",
|
|
153
|
+
block: {
|
|
154
|
+
attributes: {
|
|
155
|
+
url: { type: "string", computed: true },
|
|
156
|
+
latest_ready_revision_name: { type: "string", computed: true },
|
|
157
|
+
},
|
|
158
|
+
},
|
|
159
|
+
},
|
|
160
|
+
},
|
|
161
|
+
},
|
|
162
|
+
},
|
|
163
|
+
},
|
|
164
|
+
},
|
|
165
|
+
},
|
|
166
|
+
};
|
|
167
|
+
// Fixture for computed list/object ATTRIBUTES (type: ["list", ["object", {...}]])
|
|
168
|
+
// This is different from block_types - it's an attribute with object type
|
|
169
|
+
export const computedListAttrProvider = {
|
|
170
|
+
format_version: "1.0",
|
|
171
|
+
provider_schemas: {
|
|
172
|
+
"registry.terraform.io/hashicorp/google": {
|
|
173
|
+
provider: { version: 0, block: { attributes: {} } },
|
|
174
|
+
resource_schemas: {
|
|
175
|
+
google_cloud_run_service: {
|
|
176
|
+
version: 0,
|
|
177
|
+
block: {
|
|
178
|
+
attributes: {
|
|
179
|
+
id: { type: "string", computed: true },
|
|
180
|
+
name: { type: "string", required: true },
|
|
181
|
+
status: {
|
|
182
|
+
type: ["list", ["object", { url: "string", latest_ready_revision_name: "string" }]],
|
|
183
|
+
computed: true,
|
|
184
|
+
},
|
|
185
|
+
},
|
|
186
|
+
},
|
|
187
|
+
},
|
|
188
|
+
},
|
|
189
|
+
},
|
|
190
|
+
},
|
|
191
|
+
};
|
|
136
192
|
//# sourceMappingURL=fixtures.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../../../src/codegen/__tests__/fixtures.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../../../src/codegen/__tests__/fixtures.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,18 @@
|
|
|
1
1
|
import { test, expect, describe } from "bun:test";
|
|
2
2
|
import { generateProviderFiles } from "../generator.js";
|
|
3
|
-
import {
|
|
3
|
+
import { parseProviderSchema } from "../schema.js";
|
|
4
|
+
import { simpleProvider as rawSimple, multiwordProvider as rawMultiword, nestingModesProvider as rawNestingModes, computedListProvider as rawComputedList, computedListAttrProvider as rawComputedListAttr, } from "./fixtures.js";
|
|
5
|
+
const parse = (raw) => {
|
|
6
|
+
const result = parseProviderSchema(raw);
|
|
7
|
+
if (result.isErr())
|
|
8
|
+
throw new Error(result.error.message);
|
|
9
|
+
return result.value;
|
|
10
|
+
};
|
|
11
|
+
const simpleProvider = parse(rawSimple);
|
|
12
|
+
const multiwordProvider = parse(rawMultiword);
|
|
13
|
+
const nestingModesProvider = parse(rawNestingModes);
|
|
14
|
+
const computedListProvider = parse(rawComputedList);
|
|
15
|
+
const computedListAttrProvider = parse(rawComputedListAttr);
|
|
4
16
|
const getContent = (files, path) => {
|
|
5
17
|
const content = files.get(path);
|
|
6
18
|
if (content === undefined) {
|
|
@@ -13,21 +25,21 @@ describe("file structure", () => {
|
|
|
13
25
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
14
26
|
expect(files.has("provider/index.ts")).toBe(true);
|
|
15
27
|
});
|
|
16
|
-
test("generates resources at
|
|
28
|
+
test("generates resources at {name}/index.ts", () => {
|
|
17
29
|
const files = generateProviderFiles("google", multiwordProvider);
|
|
18
|
-
expect(files.has("
|
|
19
|
-
expect(files.has("
|
|
30
|
+
expect(files.has("alloydb-cluster/index.ts")).toBe(true);
|
|
31
|
+
expect(files.has("storage-bucket/index.ts")).toBe(true);
|
|
20
32
|
});
|
|
21
|
-
test("generates data sources at
|
|
33
|
+
test("generates data sources at data-{name}/index.ts", () => {
|
|
22
34
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
23
|
-
expect(files.has("
|
|
35
|
+
expect(files.has("data-data/index.ts")).toBe(true);
|
|
24
36
|
});
|
|
25
37
|
test("generates index.ts with namespace exports", () => {
|
|
26
38
|
const files = generateProviderFiles("google", multiwordProvider);
|
|
27
39
|
const index = getContent(files, "index.ts");
|
|
28
40
|
expect(index).toContain('export * as provider from "./provider/index.js"');
|
|
29
|
-
expect(index).toContain('export * as alloydbCluster from "./
|
|
30
|
-
expect(index).toContain('export * as storageBucket from "./
|
|
41
|
+
expect(index).toContain('export * as alloydbCluster from "./alloydb-cluster/index.js"');
|
|
42
|
+
expect(index).toContain('export * as storageBucket from "./storage-bucket/index.js"');
|
|
31
43
|
});
|
|
32
44
|
});
|
|
33
45
|
describe("class naming", () => {
|
|
@@ -38,24 +50,24 @@ describe("class naming", () => {
|
|
|
38
50
|
});
|
|
39
51
|
test("resource class: strips provider prefix, PascalCase", () => {
|
|
40
52
|
const files = generateProviderFiles("google", multiwordProvider);
|
|
41
|
-
const content = getContent(files, "
|
|
53
|
+
const content = getContent(files, "alloydb-cluster/index.ts");
|
|
42
54
|
expect(content).toContain("export class AlloydbCluster extends TerraformResource");
|
|
43
55
|
});
|
|
44
56
|
test("data source class: Data{Name}", () => {
|
|
45
57
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
46
|
-
const content = getContent(files, "
|
|
58
|
+
const content = getContent(files, "data-data/index.ts");
|
|
47
59
|
expect(content).toContain("export class DataData extends TerraformDataSource");
|
|
48
60
|
});
|
|
49
61
|
});
|
|
50
62
|
describe("type naming", () => {
|
|
51
63
|
test("config type: {ClassName}Config", () => {
|
|
52
64
|
const files = generateProviderFiles("test", nestingModesProvider);
|
|
53
|
-
const content = getContent(files, "
|
|
65
|
+
const content = getContent(files, "resource/index.ts");
|
|
54
66
|
expect(content).toContain("export type ResourceConfig = {");
|
|
55
67
|
});
|
|
56
68
|
test("nested block type: {ClassName}{BlockName} (not {ClassName}Config{BlockName})", () => {
|
|
57
69
|
const files = generateProviderFiles("test", nestingModesProvider);
|
|
58
|
-
const content = getContent(files, "
|
|
70
|
+
const content = getContent(files, "resource/index.ts");
|
|
59
71
|
// Correct: ResourceSingleBlock
|
|
60
72
|
expect(content).toContain("export type ResourceSingleBlock = {");
|
|
61
73
|
expect(content).toContain("export type ResourceListBlock = {");
|
|
@@ -67,7 +79,7 @@ describe("type naming", () => {
|
|
|
67
79
|
});
|
|
68
80
|
test("collision: append A when type name exists", () => {
|
|
69
81
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
70
|
-
const content = getContent(files, "
|
|
82
|
+
const content = getContent(files, "resource/index.ts");
|
|
71
83
|
// ResourceConfig exists for the config type
|
|
72
84
|
// Nested block "config" would also be ResourceConfig -> becomes ResourceConfigA
|
|
73
85
|
expect(content).toContain("export type ResourceConfigA = {");
|
|
@@ -77,7 +89,7 @@ describe("type naming", () => {
|
|
|
77
89
|
describe("property naming", () => {
|
|
78
90
|
test("converts snake_case to camelCase", () => {
|
|
79
91
|
const files = generateProviderFiles("test", nestingModesProvider);
|
|
80
|
-
const content = getContent(files, "
|
|
92
|
+
const content = getContent(files, "resource/index.ts");
|
|
81
93
|
expect(content).toContain("readonly secretId?:");
|
|
82
94
|
expect(content).toContain("readonly singleBlock?:");
|
|
83
95
|
expect(content).toContain("readonly listBlock?:");
|
|
@@ -86,7 +98,7 @@ describe("property naming", () => {
|
|
|
86
98
|
});
|
|
87
99
|
test("uses snake_case in terraform attribute mapping", () => {
|
|
88
100
|
const files = generateProviderFiles("test", nestingModesProvider);
|
|
89
|
-
const content = getContent(files, "
|
|
101
|
+
const content = getContent(files, "resource/index.ts");
|
|
90
102
|
expect(content).toContain("secret_id: config.secretId");
|
|
91
103
|
expect(content).toContain("single_block: config.singleBlock");
|
|
92
104
|
});
|
|
@@ -94,43 +106,43 @@ describe("property naming", () => {
|
|
|
94
106
|
describe("block nesting modes", () => {
|
|
95
107
|
test("single: generates T", () => {
|
|
96
108
|
const files = generateProviderFiles("test", nestingModesProvider);
|
|
97
|
-
const content = getContent(files, "
|
|
109
|
+
const content = getContent(files, "resource/index.ts");
|
|
98
110
|
expect(content).toContain("readonly singleBlock?: ResourceSingleBlock;");
|
|
99
111
|
expect(content).not.toContain("readonly singleBlock?: ResourceSingleBlock |");
|
|
100
112
|
});
|
|
101
113
|
test("list without max_items=1: generates readonly T[]", () => {
|
|
102
114
|
const files = generateProviderFiles("test", nestingModesProvider);
|
|
103
|
-
const content = getContent(files, "
|
|
115
|
+
const content = getContent(files, "resource/index.ts");
|
|
104
116
|
expect(content).toContain("readonly listBlock?: readonly ResourceListBlock[];");
|
|
105
117
|
});
|
|
106
118
|
test("set: generates readonly T[]", () => {
|
|
107
119
|
const files = generateProviderFiles("test", nestingModesProvider);
|
|
108
|
-
const content = getContent(files, "
|
|
120
|
+
const content = getContent(files, "resource/index.ts");
|
|
109
121
|
expect(content).toContain("readonly setBlock?: readonly ResourceSetBlock[];");
|
|
110
122
|
});
|
|
111
123
|
test("list with max_items=1: generates T | readonly T[]", () => {
|
|
112
124
|
const files = generateProviderFiles("test", nestingModesProvider);
|
|
113
|
-
const content = getContent(files, "
|
|
125
|
+
const content = getContent(files, "resource/index.ts");
|
|
114
126
|
expect(content).toContain("readonly singleItemList?: ResourceSingleItemList | readonly ResourceSingleItemList[];");
|
|
115
127
|
});
|
|
116
128
|
});
|
|
117
129
|
describe("constructor body", () => {
|
|
118
130
|
test("regular properties: tf_name: config.tsName", () => {
|
|
119
131
|
const files = generateProviderFiles("test", nestingModesProvider);
|
|
120
|
-
const content = getContent(files, "
|
|
132
|
+
const content = getContent(files, "resource/index.ts");
|
|
121
133
|
expect(content).toContain("secret_id: config.secretId,");
|
|
122
134
|
expect(content).toContain("single_block: config.singleBlock,");
|
|
123
135
|
});
|
|
124
136
|
test("max_items=1 blocks: array normalization", () => {
|
|
125
137
|
const files = generateProviderFiles("test", nestingModesProvider);
|
|
126
|
-
const content = getContent(files, "
|
|
138
|
+
const content = getContent(files, "resource/index.ts");
|
|
127
139
|
expect(content).toContain("single_item_list: config.singleItemList !== undefined ? (Array.isArray(config.singleItemList) ? config.singleItemList : [config.singleItemList]) : undefined,");
|
|
128
140
|
});
|
|
129
141
|
});
|
|
130
142
|
describe("getters", () => {
|
|
131
143
|
test("generates getters for all attributes", () => {
|
|
132
144
|
const files = generateProviderFiles("test", nestingModesProvider);
|
|
133
|
-
const content = getContent(files, "
|
|
145
|
+
const content = getContent(files, "resource/index.ts");
|
|
134
146
|
expect(content).toContain("get id(): TokenValue<string> {");
|
|
135
147
|
expect(content).toContain("get name(): TokenValue<string> {");
|
|
136
148
|
expect(content).toContain("get secretId(): TokenValue<string> {");
|
|
@@ -138,57 +150,57 @@ describe("getters", () => {
|
|
|
138
150
|
});
|
|
139
151
|
test("getter format: return this.getStringAttribute(tf_name)", () => {
|
|
140
152
|
const files = generateProviderFiles("test", nestingModesProvider);
|
|
141
|
-
const content = getContent(files, "
|
|
153
|
+
const content = getContent(files, "resource/index.ts");
|
|
142
154
|
expect(content).toContain('return this.getStringAttribute("secret_id");');
|
|
143
155
|
});
|
|
144
156
|
});
|
|
145
157
|
describe("attribute type mappings", () => {
|
|
146
158
|
test("string -> TfString in config", () => {
|
|
147
159
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
148
|
-
const content = getContent(files, "
|
|
160
|
+
const content = getContent(files, "resource/index.ts");
|
|
149
161
|
expect(content).toContain("readonly name: TfString;");
|
|
150
162
|
});
|
|
151
163
|
test("bool -> TfBoolean in config", () => {
|
|
152
164
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
153
|
-
const content = getContent(files, "
|
|
165
|
+
const content = getContent(files, "resource/index.ts");
|
|
154
166
|
expect(content).toContain("readonly enabled?: TfBoolean;");
|
|
155
167
|
});
|
|
156
168
|
test("number -> TfNumber in config", () => {
|
|
157
169
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
158
|
-
const content = getContent(files, "
|
|
170
|
+
const content = getContent(files, "resource/index.ts");
|
|
159
171
|
expect(content).toContain("readonly count?: TfNumber;");
|
|
160
172
|
});
|
|
161
173
|
test('["map", "string"] -> TfStringMap in config', () => {
|
|
162
174
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
163
|
-
const content = getContent(files, "
|
|
175
|
+
const content = getContent(files, "resource/index.ts");
|
|
164
176
|
expect(content).toContain("readonly tags?: TfStringMap;");
|
|
165
177
|
});
|
|
166
178
|
});
|
|
167
179
|
describe("optionality", () => {
|
|
168
180
|
test("required: true -> required property", () => {
|
|
169
181
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
170
|
-
const content = getContent(files, "
|
|
182
|
+
const content = getContent(files, "resource/index.ts");
|
|
171
183
|
expect(content).toContain("readonly name: TfString;"); // no ?
|
|
172
184
|
});
|
|
173
185
|
test("optional: true -> optional property", () => {
|
|
174
186
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
175
|
-
const content = getContent(files, "
|
|
187
|
+
const content = getContent(files, "resource/index.ts");
|
|
176
188
|
expect(content).toContain("readonly enabled?: TfBoolean;");
|
|
177
189
|
});
|
|
178
190
|
test("computed: true -> optional property", () => {
|
|
179
191
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
180
|
-
const content = getContent(files, "
|
|
192
|
+
const content = getContent(files, "resource/index.ts");
|
|
181
193
|
expect(content).toContain("readonly id?: TfString;");
|
|
182
194
|
});
|
|
183
195
|
test("block with min_items undefined or 0 -> optional", () => {
|
|
184
196
|
const files = generateProviderFiles("test", nestingModesProvider);
|
|
185
|
-
const content = getContent(files, "
|
|
197
|
+
const content = getContent(files, "resource/index.ts");
|
|
186
198
|
expect(content).toContain("readonly singleBlock?:");
|
|
187
199
|
expect(content).toContain("readonly listBlock?:");
|
|
188
200
|
});
|
|
189
201
|
test("block with min_items >= 1 -> required", () => {
|
|
190
202
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
191
|
-
const content = getContent(files, "
|
|
203
|
+
const content = getContent(files, "resource/index.ts");
|
|
192
204
|
// items has min_items: 1
|
|
193
205
|
expect(content).toContain("readonly items: readonly ResourceItems[];");
|
|
194
206
|
});
|
|
@@ -196,7 +208,7 @@ describe("optionality", () => {
|
|
|
196
208
|
describe("input getters", () => {
|
|
197
209
|
test("generates *Input getters for non-computed attributes", () => {
|
|
198
210
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
199
|
-
const content = getContent(files, "
|
|
211
|
+
const content = getContent(files, "resource/index.ts");
|
|
200
212
|
// Should have nameInput for required attribute
|
|
201
213
|
expect(content).toContain("get nameInput():");
|
|
202
214
|
// Should have enabledInput for optional attribute
|
|
@@ -208,13 +220,13 @@ describe("input getters", () => {
|
|
|
208
220
|
});
|
|
209
221
|
test("does not generate *Input getters for computed-only attributes", () => {
|
|
210
222
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
211
|
-
const content = getContent(files, "
|
|
223
|
+
const content = getContent(files, "resource/index.ts");
|
|
212
224
|
// id is computed-only, should not have idInput
|
|
213
225
|
expect(content).not.toContain("get idInput():");
|
|
214
226
|
});
|
|
215
227
|
test("*Input getter returns the config value type", () => {
|
|
216
228
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
217
|
-
const content = getContent(files, "
|
|
229
|
+
const content = getContent(files, "resource/index.ts");
|
|
218
230
|
expect(content).toContain("get nameInput(): TfString | undefined {");
|
|
219
231
|
expect(content).toContain("return this._config.name;");
|
|
220
232
|
});
|
|
@@ -222,37 +234,37 @@ describe("input getters", () => {
|
|
|
222
234
|
describe("importFrom static method", () => {
|
|
223
235
|
test("generates importFrom static method on resources", () => {
|
|
224
236
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
225
|
-
const content = getContent(files, "
|
|
237
|
+
const content = getContent(files, "resource/index.ts");
|
|
226
238
|
expect(content).toContain("static importFrom(");
|
|
227
239
|
});
|
|
228
240
|
test("importFrom has correct signature", () => {
|
|
229
241
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
230
|
-
const content = getContent(files, "
|
|
242
|
+
const content = getContent(files, "resource/index.ts");
|
|
231
243
|
expect(content).toContain("static importFrom(scope: Construct, id: string, resourceId: TfString, provider?: TerraformProvider):");
|
|
232
244
|
});
|
|
233
245
|
test("importFrom returns instance with import lifecycle", () => {
|
|
234
246
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
235
|
-
const content = getContent(files, "
|
|
247
|
+
const content = getContent(files, "resource/index.ts");
|
|
236
248
|
expect(content).toContain("lifecycle: { importId: resourceId }");
|
|
237
249
|
});
|
|
238
250
|
});
|
|
239
251
|
describe("imports", () => {
|
|
240
252
|
test("imports TokenValue instead of TokenString", () => {
|
|
241
253
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
242
|
-
const content = getContent(files, "
|
|
254
|
+
const content = getContent(files, "resource/index.ts");
|
|
243
255
|
expect(content).toContain("TokenValue");
|
|
244
256
|
expect(content).not.toContain("TokenString");
|
|
245
257
|
});
|
|
246
258
|
test("does not duplicate base class in type and value imports", () => {
|
|
247
259
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
248
|
-
const content = getContent(files, "
|
|
260
|
+
const content = getContent(files, "resource/index.ts");
|
|
249
261
|
// Should have value import only, not in type import
|
|
250
262
|
expect(content).toContain('import { TerraformResource } from "tfts"');
|
|
251
263
|
expect(content).not.toMatch(/import type \{[^}]*\bTerraformResource\b[^}]*\}/);
|
|
252
264
|
});
|
|
253
265
|
test("getter returns TokenValue<string>", () => {
|
|
254
266
|
const files = generateProviderFiles("simple", simpleProvider);
|
|
255
|
-
const content = getContent(files, "
|
|
267
|
+
const content = getContent(files, "resource/index.ts");
|
|
256
268
|
expect(content).toContain("get name(): TokenValue<string>");
|
|
257
269
|
});
|
|
258
270
|
});
|
|
@@ -264,4 +276,59 @@ describe("provider config", () => {
|
|
|
264
276
|
expect(content).toContain("readonly region?: TfString");
|
|
265
277
|
});
|
|
266
278
|
});
|
|
279
|
+
describe("computed list block_types", () => {
|
|
280
|
+
test("generates getter returning ComputedList for computed list blocks", () => {
|
|
281
|
+
const files = generateProviderFiles("google", computedListProvider);
|
|
282
|
+
const content = getContent(files, "cloud-run-service/index.ts");
|
|
283
|
+
expect(content).toContain("get status(): ComputedList<CloudRunServiceStatusOutput>");
|
|
284
|
+
});
|
|
285
|
+
test("generates output class with getters for computed attributes", () => {
|
|
286
|
+
const files = generateProviderFiles("google", computedListProvider);
|
|
287
|
+
const content = getContent(files, "cloud-run-service/index.ts");
|
|
288
|
+
expect(content).toContain("class CloudRunServiceStatusOutput extends ComputedObject");
|
|
289
|
+
expect(content).toContain("get url(): TokenValue<string>");
|
|
290
|
+
expect(content).toContain("get latestReadyRevisionName(): TokenValue<string>");
|
|
291
|
+
});
|
|
292
|
+
test("imports ComputedList and ComputedObject when needed", () => {
|
|
293
|
+
const files = generateProviderFiles("google", computedListProvider);
|
|
294
|
+
const content = getContent(files, "cloud-run-service/index.ts");
|
|
295
|
+
expect(content).toContain("import { ComputedList, ComputedObject, TerraformResource } from");
|
|
296
|
+
});
|
|
297
|
+
});
|
|
298
|
+
describe("computed list/object attributes", () => {
|
|
299
|
+
test("generates getter returning ComputedList for computed list attributes", () => {
|
|
300
|
+
const files = generateProviderFiles("google", computedListAttrProvider);
|
|
301
|
+
const content = getContent(files, "cloud-run-service/index.ts");
|
|
302
|
+
expect(content).toContain("get status(): ComputedList<CloudRunServiceStatusOutput>");
|
|
303
|
+
});
|
|
304
|
+
test("generates output class for computed list attribute", () => {
|
|
305
|
+
const files = generateProviderFiles("google", computedListAttrProvider);
|
|
306
|
+
const content = getContent(files, "cloud-run-service/index.ts");
|
|
307
|
+
expect(content).toContain("class CloudRunServiceStatusOutput extends ComputedObject");
|
|
308
|
+
expect(content).toContain("get url(): TokenValue<string>");
|
|
309
|
+
expect(content).toContain("get latestReadyRevisionName(): TokenValue<string>");
|
|
310
|
+
});
|
|
311
|
+
test("does not include computed list attribute in config type", () => {
|
|
312
|
+
const files = generateProviderFiles("google", computedListAttrProvider);
|
|
313
|
+
const content = getContent(files, "cloud-run-service/index.ts");
|
|
314
|
+
expect(content).not.toContain("readonly status?:");
|
|
315
|
+
expect(content).not.toContain("readonly status:");
|
|
316
|
+
});
|
|
317
|
+
test("does not generate duplicate getter for computed list attribute", () => {
|
|
318
|
+
const files = generateProviderFiles("google", computedListAttrProvider);
|
|
319
|
+
const content = getContent(files, "cloud-run-service/index.ts");
|
|
320
|
+
const matches = content.match(/get status\(\)/g);
|
|
321
|
+
expect(matches?.length).toBe(1);
|
|
322
|
+
});
|
|
323
|
+
test("does not include computed list attribute in constructor body", () => {
|
|
324
|
+
const files = generateProviderFiles("google", computedListAttrProvider);
|
|
325
|
+
const content = getContent(files, "cloud-run-service/index.ts");
|
|
326
|
+
expect(content).not.toContain("status: config.status");
|
|
327
|
+
});
|
|
328
|
+
test("imports ComputedList and ComputedObject for computed list attributes", () => {
|
|
329
|
+
const files = generateProviderFiles("google", computedListAttrProvider);
|
|
330
|
+
const content = getContent(files, "cloud-run-service/index.ts");
|
|
331
|
+
expect(content).toContain("import { ComputedList, ComputedObject, TerraformResource }");
|
|
332
|
+
});
|
|
333
|
+
});
|
|
267
334
|
//# sourceMappingURL=generator.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.spec.js","sourceRoot":"","sources":["../../../../src/codegen/__tests__/generator.spec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generator.spec.js","sourceRoot":"","sources":["../../../../src/codegen/__tests__/generator.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../src/codegen/generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAKf,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../src/codegen/generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAKf,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAwkBzD,eAAO,MAAM,qBAAqB,GAAI,MAAM,MAAM,EAAE,QAAQ,cAAc,KAAG,cAiC5E,CAAC"}
|