Skip to content

Commit 79fdd4d

Browse files
author
Kartik Raj
committed
Add unit tests
1 parent ab0098a commit 79fdd4d

File tree

2 files changed

+26
-7
lines changed

2 files changed

+26
-7
lines changed

src/client/interpreter/configuration/interpreterSelector/commands/setInterpreter.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ import { BaseInterpreterSelectorCommand } from './base';
5050
const untildify = require('untildify');
5151

5252
export type InterpreterStateArgs = { path?: string; workspace: Resource };
53-
type QuickPickType = IInterpreterQuickPickItem | ISpecialQuickPickItem | QuickPickItem;
53+
export type QuickPickType = IInterpreterQuickPickItem | ISpecialQuickPickItem | QuickPickItem;
5454

5555
function isInterpreterQuickPickItem(item: QuickPickType): item is IInterpreterQuickPickItem {
5656
return 'interpreter' in item;

src/test/configuration/interpreterSelector/commands/setInterpreter.unit.test.ts

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import {
3131
import {
3232
EnvGroups,
3333
InterpreterStateArgs,
34+
QuickPickType,
3435
SetInterpreterCommand,
3536
} from '../../../../client/interpreter/configuration/interpreterSelector/commands/setInterpreter';
3637
import {
@@ -265,8 +266,14 @@ suite('Set Interpreter Command', () => {
265266
delete actualParameters!.initialize;
266267
delete actualParameters!.customButtonSetups;
267268
delete actualParameters!.onChangeItem;
268-
const activeItem = await actualParameters!.activeItem;
269-
assert.deepStrictEqual(activeItem, recommended);
269+
if (typeof actualParameters!.activeItem === 'function') {
270+
const activeItem = await actualParameters!.activeItem(({ items: suggestions } as unknown) as QuickPick<
271+
QuickPickType
272+
>);
273+
assert.deepStrictEqual(activeItem, recommended);
274+
} else {
275+
assert(false, 'Not a function');
276+
}
270277
delete actualParameters!.activeItem;
271278
assert.deepStrictEqual(actualParameters, expectedParameters, 'Params not equal');
272279
});
@@ -308,8 +315,14 @@ suite('Set Interpreter Command', () => {
308315
delete actualParameters!.initialize;
309316
delete actualParameters!.customButtonSetups;
310317
delete actualParameters!.onChangeItem;
311-
const activeItem = await actualParameters!.activeItem;
312-
assert.deepStrictEqual(activeItem, noPythonInstalled);
318+
if (typeof actualParameters!.activeItem === 'function') {
319+
const activeItem = await actualParameters!.activeItem(({ items: suggestions } as unknown) as QuickPick<
320+
QuickPickType
321+
>);
322+
assert.deepStrictEqual(activeItem, noPythonInstalled);
323+
} else {
324+
assert(false, 'Not a function');
325+
}
313326
delete actualParameters!.activeItem;
314327
assert.deepStrictEqual(actualParameters, expectedParameters, 'Params not equal');
315328
});
@@ -666,8 +679,14 @@ suite('Set Interpreter Command', () => {
666679
delete actualParameters!.initialize;
667680
delete actualParameters!.customButtonSetups;
668681
delete actualParameters!.onChangeItem;
669-
const activeItem = await actualParameters!.activeItem;
670-
assert.deepStrictEqual(activeItem, recommended);
682+
if (typeof actualParameters!.activeItem === 'function') {
683+
const activeItem = await actualParameters!.activeItem(({ items: suggestions } as unknown) as QuickPick<
684+
QuickPickType
685+
>);
686+
assert.deepStrictEqual(activeItem, recommended);
687+
} else {
688+
assert(false, 'Not a function');
689+
}
671690
delete actualParameters!.activeItem;
672691

673692
assert.deepStrictEqual(actualParameters, expectedParameters, 'Params not equal');

0 commit comments

Comments
 (0)