Skip to content

Commit

Permalink
Enable tests for .tfstack.hcl files
Browse files Browse the repository at this point in the history
  • Loading branch information
dbanck committed Oct 16, 2024
1 parent e8eb4a3 commit a03ee1d
Showing 1 changed file with 48 additions and 26 deletions.
74 changes: 48 additions & 26 deletions src/test/integration/stacks/stack.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -60,17 +60,6 @@ suite('stacks stack', () => {
});

test('completes attributes of component block', async () => {
// await vscode.window.activeTextEditor?.edit((editBuilder) => {
// editBuilder.insert(
// new vscode.Position(2, 0),
// `
// component "test" {

// }
// `,
// );
// });

const expected = [
new vscode.CompletionItem('depends_on', vscode.CompletionItemKind.Property),
new vscode.CompletionItem('for_each', vscode.CompletionItemKind.Property),
Expand All @@ -80,25 +69,24 @@ suite('stacks stack', () => {
new vscode.CompletionItem('version', vscode.CompletionItemKind.Property),
];

// await testCompletion(docUri, new vscode.Position(4, 2), {
await testCompletion(docUri, new vscode.Position(4, 12), {
items: expected,
});
});

// TODO: not implemented yet
test.skip('completes inputs for local component', async () => {
test('completes inputs for local component', async () => {
await open(docUri);
await vscode.window.activeTextEditor?.edit((editBuilder) => {
editBuilder.insert(
new vscode.Position(2, 0),
`
component "test" {
source = "./lambda"
component "test" {
source = "./lambda"
inputs = {
inputs = {
}
}
}
}
`,
);
});
Expand All @@ -110,25 +98,59 @@ suite('stacks stack', () => {
});
});

// TODO: not implemented yet
test.skip('completes references to provider blocks', async () => {
test('completes providers for local component', async () => {
await open(docUri);
await vscode.window.activeTextEditor?.edit((editBuilder) => {
editBuilder.insert(
new vscode.Position(2, 0),
`
component "test" {
source = "./lambda"
providers = {
}
}
`,
);
});

const expected = [
new vscode.CompletionItem('archive', vscode.CompletionItemKind.Property),
new vscode.CompletionItem('aws', vscode.CompletionItemKind.Property),
new vscode.CompletionItem('local', vscode.CompletionItemKind.Property),
new vscode.CompletionItem('random', vscode.CompletionItemKind.Property),
];

await testCompletion(docUri, new vscode.Position(11, 22), {
await testCompletion(docUri, new vscode.Position(7, 4), {
items: expected,
});
});

// TODO implement this
test.skip('completes references to provider block names', async () => {
const expected = [new vscode.CompletionItem('this', vscode.CompletionItemKind.Property)];
test('completes references to providers', async () => {
await open(docUri);
await vscode.window.activeTextEditor?.edit((editBuilder) => {
editBuilder.insert(
new vscode.Position(2, 0),
`
component "test" {
source = "./lambda"
await testCompletion(docUri, new vscode.Position(11, 26), {
providers = {
aws = provider.
}
}
`,
);
});

const expected = [
new vscode.CompletionItem('provider.archive.this', vscode.CompletionItemKind.Variable),
new vscode.CompletionItem('provider.aws.this', vscode.CompletionItemKind.Variable),
new vscode.CompletionItem('provider.local.this', vscode.CompletionItemKind.Variable),
new vscode.CompletionItem('provider.random.this', vscode.CompletionItemKind.Variable),
];
await testCompletion(docUri, new vscode.Position(7, 19), {
items: expected,
});
});
Expand Down

0 comments on commit a03ee1d

Please sign in to comment.