Skip to content

Commit 39bca22

Browse files
authored
fix: make tests work with changed vscode clipboard object VSCODE-241 (#271)
We can’t modify a frozen object, which `vscode.env.clipboard` has recently become. Refs: microsoft/vscode@4cfd5f8#diff-635fc88732ee6c5c620c7b69dc4b9a56ba478d96505aec360fce3d6fa6b8c314
1 parent 4655b8c commit 39bca22

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

src/test/suite/mdbExtensionController.test.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -250,7 +250,7 @@ suite('MDBExtensionController Test Suite', function () {
250250
);
251251

252252
const mockCopyToClipboard: any = sinon.fake();
253-
sinon.replace(vscode.env.clipboard, 'writeText', mockCopyToClipboard);
253+
sinon.replaceGetter(vscode.env, 'clipboard', () => ({ writeText: mockCopyToClipboard, readText: sinon.fake() as any }));
254254

255255
const mockStubUri: any = sinon.fake.returns('weStubThisUri');
256256
sinon.replace(
@@ -284,7 +284,7 @@ suite('MDBExtensionController Test Suite', function () {
284284
);
285285

286286
const mockCopyToClipboard: any = sinon.fake();
287-
sinon.replace(vscode.env.clipboard, 'writeText', mockCopyToClipboard);
287+
sinon.replaceGetter(vscode.env, 'clipboard', () => ({ writeText: mockCopyToClipboard, readText: sinon.fake() as any }));
288288

289289
vscode.commands
290290
.executeCommand('mdb.copyDatabaseName', mockTreeItem)
@@ -315,7 +315,7 @@ suite('MDBExtensionController Test Suite', function () {
315315
);
316316

317317
const mockCopyToClipboard: any = sinon.fake();
318-
sinon.replace(vscode.env.clipboard, 'writeText', mockCopyToClipboard);
318+
sinon.replaceGetter(vscode.env, 'clipboard', () => ({ writeText: mockCopyToClipboard, readText: sinon.fake() as any }));
319319

320320
vscode.commands
321321
.executeCommand('mdb.copyCollectionName', mockTreeItem)
@@ -345,7 +345,7 @@ suite('MDBExtensionController Test Suite', function () {
345345
);
346346

347347
const mockCopyToClipboard: any = sinon.fake();
348-
sinon.replace(vscode.env.clipboard, 'writeText', mockCopyToClipboard);
348+
sinon.replaceGetter(vscode.env, 'clipboard', () => ({ writeText: mockCopyToClipboard, readText: sinon.fake() as any }));
349349

350350
const commandResult = await vscode.commands.executeCommand(
351351
'mdb.copySchemaFieldName',

0 commit comments

Comments
 (0)