Skip to content

Commit 1a3a149

Browse files
committed
Retry rename test to avoid Razor startup issues
1 parent 4c13b24 commit 1a3a149

File tree

1 file changed

+41
-23
lines changed

1 file changed

+41
-23
lines changed

test/razor/razorIntegrationTests/rename.integration.test.ts

Lines changed: 41 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -36,34 +36,52 @@ describe(`Razor Rename ${testAssetWorkspace.description}`, function () {
3636
throw new Error('No active document');
3737
}
3838

39-
const workspaceEdit = <vscode.WorkspaceEdit>(
40-
await vscode.commands.executeCommand(
41-
'vscode.executeDocumentRenameProvider',
42-
activeDocument,
43-
new vscode.Position(11, 20),
44-
'newName'
45-
)
46-
);
39+
const duration = 30 * 1000;
40+
const step = 500;
41+
42+
await integrationHelpers.waitForExpectedResult(
43+
async () => {
44+
const workspaceEdit = <vscode.WorkspaceEdit>(
45+
await vscode.commands.executeCommand(
46+
'vscode.executeDocumentRenameProvider',
47+
activeDocument,
48+
new vscode.Position(11, 20),
49+
'newName'
50+
)
51+
);
4752

48-
expect(workspaceEdit).toBeDefined();
53+
return workspaceEdit;
54+
},
55+
duration,
56+
step,
57+
(workspaceEdit) => {
58+
expect(workspaceEdit).toBeDefined();
4959

50-
const entries = workspaceEdit.entries();
51-
expect(entries.length).toBe(1);
60+
const entries = workspaceEdit.entries();
61+
expect(entries.length).toBe(1);
5262

53-
const [uri, edits] = entries[0];
54-
expect(uri.path).toStrictEqual(activeDocument.path);
55-
expect(edits.length).toBe(3);
63+
const [uri, edits] = entries[0];
64+
expect(uri.path).toStrictEqual(activeDocument.path);
65+
expect(edits.length).toBe(3);
5666

57-
const edit1 = edits[0];
58-
expect(edit1.range).toStrictEqual(new vscode.Range(new vscode.Position(6, 33), new vscode.Position(6, 45)));
59-
expect(edit1.newText).toBe('newName');
67+
const edit1 = edits[0];
68+
expect(edit1.range).toStrictEqual(
69+
new vscode.Range(new vscode.Position(6, 33), new vscode.Position(6, 45))
70+
);
71+
expect(edit1.newText).toBe('newName');
6072

61-
const edit2 = edits[1];
62-
expect(edit2.range).toStrictEqual(new vscode.Range(new vscode.Position(11, 16), new vscode.Position(11, 28)));
63-
expect(edit2.newText).toBe('newName');
73+
const edit2 = edits[1];
74+
expect(edit2.range).toStrictEqual(
75+
new vscode.Range(new vscode.Position(11, 16), new vscode.Position(11, 28))
76+
);
77+
expect(edit2.newText).toBe('newName');
6478

65-
const edit3 = edits[2];
66-
expect(edit3.range).toStrictEqual(new vscode.Range(new vscode.Position(15, 8), new vscode.Position(15, 20)));
67-
expect(edit3.newText).toBe('newName');
79+
const edit3 = edits[2];
80+
expect(edit3.range).toStrictEqual(
81+
new vscode.Range(new vscode.Position(15, 8), new vscode.Position(15, 20))
82+
);
83+
expect(edit3.newText).toBe('newName');
84+
}
85+
);
6886
});
6987
});

0 commit comments

Comments
 (0)