diff options
Diffstat (limited to 'packages/cli/src/ui/commands/ideCommand.test.ts')
| -rw-r--r-- | packages/cli/src/ui/commands/ideCommand.test.ts | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/packages/cli/src/ui/commands/ideCommand.test.ts b/packages/cli/src/ui/commands/ideCommand.test.ts index 8576320b..f61df287 100644 --- a/packages/cli/src/ui/commands/ideCommand.test.ts +++ b/packages/cli/src/ui/commands/ideCommand.test.ts @@ -69,16 +69,35 @@ describe('ideCommand', () => { vi.mocked(mockConfig.getIdeClient).mockReturnValue({ getCurrentIde: () => DetectedIde.VSCode, getDetectedIdeDisplayName: () => 'VS Code', + getConnectionStatus: () => ({ + status: core.IDEConnectionStatus.Disconnected, + }), } as ReturnType<Config['getIdeClient']>); const command = ideCommand(mockConfig); expect(command).not.toBeNull(); expect(command?.name).toBe('ide'); expect(command?.subCommands).toHaveLength(3); - expect(command?.subCommands?.[0].name).toBe('disable'); + expect(command?.subCommands?.[0].name).toBe('enable'); expect(command?.subCommands?.[1].name).toBe('status'); expect(command?.subCommands?.[2].name).toBe('install'); }); + it('should show disable command when connected', () => { + vi.mocked(mockConfig.getIdeMode).mockReturnValue(true); + vi.mocked(mockConfig.getIdeClient).mockReturnValue({ + getCurrentIde: () => DetectedIde.VSCode, + getDetectedIdeDisplayName: () => 'VS Code', + getConnectionStatus: () => ({ + status: core.IDEConnectionStatus.Connected, + }), + } as ReturnType<Config['getIdeClient']>); + const command = ideCommand(mockConfig); + expect(command).not.toBeNull(); + const subCommandNames = command?.subCommands?.map((cmd) => cmd.name); + expect(subCommandNames).toContain('disable'); + expect(subCommandNames).not.toContain('enable'); + }); + describe('status subcommand', () => { const mockGetConnectionStatus = vi.fn(); beforeEach(() => { @@ -161,7 +180,9 @@ describe('ideCommand', () => { vi.mocked(mockConfig.getIdeMode).mockReturnValue(true); vi.mocked(mockConfig.getIdeClient).mockReturnValue({ getCurrentIde: () => DetectedIde.VSCode, - getConnectionStatus: vi.fn(), + getConnectionStatus: () => ({ + status: core.IDEConnectionStatus.Disconnected, + }), getDetectedIdeDisplayName: () => 'VS Code', } as unknown as ReturnType<Config['getIdeClient']>); vi.mocked(core.getIdeInstaller).mockReturnValue({ |
