@@ -7,9 +7,11 @@ vi.mock('@inquirer/prompts', () => ({
|
7 | 7 | select: vi.fn(), |
8 | 8 | })); |
9 | 9 | |
10 | | -const { input: mockInput, checkbox: mockCheckbox } = vi.mocked( |
11 | | -await import('@inquirer/prompts'), |
12 | | -); |
| 10 | +const { |
| 11 | +input: mockInput, |
| 12 | +select: mockSelect, |
| 13 | +checkbox: mockCheckbox, |
| 14 | +} = vi.mocked(await import('@inquirer/prompts')); |
13 | 15 | |
14 | 16 | describe('promptPluginOptions', () => { |
15 | 17 | const descriptors: PluginPromptDescriptor[] = [ |
@@ -47,6 +49,30 @@ describe('promptPluginOptions', () => {
|
47 | 49 | expect(mockInput).toHaveBeenCalledOnce(); |
48 | 50 | }); |
49 | 51 | |
| 52 | +it('should pass default to select prompt', async () => { |
| 53 | +mockSelect.mockResolvedValue('pnpm'); |
| 54 | + |
| 55 | +await promptPluginOptions( |
| 56 | +[ |
| 57 | +{ |
| 58 | +key: 'js-packages.packageManager', |
| 59 | +message: 'Package manager', |
| 60 | +type: 'select', |
| 61 | +choices: [ |
| 62 | +{ name: 'npm', value: 'npm' }, |
| 63 | +{ name: 'pnpm', value: 'pnpm' }, |
| 64 | +], |
| 65 | +default: 'pnpm', |
| 66 | +}, |
| 67 | +], |
| 68 | +{}, |
| 69 | +); |
| 70 | + |
| 71 | +expect(mockSelect).toHaveBeenCalledWith( |
| 72 | +expect.objectContaining({ default: 'pnpm' }), |
| 73 | +); |
| 74 | +}); |
| 75 | + |
50 | 76 | it('should return checkbox values as array', async () => { |
51 | 77 | mockCheckbox.mockResolvedValue(['json', 'csv']); |
52 | 78 | |
|