mirror of
https://github.com/google-gemini/gemini-cli.git
synced 2026-05-13 05:12:55 -07:00
test(cli): update tests and snapshots for enableCompactToolOutput
- Update all UI snapshots to synchronize with the new 'compact' default and minor layout tweaks. - Update legacy UI regression tests to explicitly disable 'enableCompactToolOutput' to verify boxed layout behavior (overflows, sticky headers). - Refactor 'useGeminiStream.test.tsx' to resolve TypeErrors and use consistent mock settings supporting the new UI options. - Fix EPERM failures by using 'os.tmpdir()' in a2a-server and CLI theme tests to resolve macOS Seatbelt issues.
This commit is contained in:
@@ -20,6 +20,8 @@ import {
|
|||||||
import { createMockMessageBus } from '@google/gemini-cli-core/src/test-utils/mock-message-bus.js';
|
import { createMockMessageBus } from '@google/gemini-cli-core/src/test-utils/mock-message-bus.js';
|
||||||
import type { Config, Storage } from '@google/gemini-cli-core';
|
import type { Config, Storage } from '@google/gemini-cli-core';
|
||||||
import { expect, vi } from 'vitest';
|
import { expect, vi } from 'vitest';
|
||||||
|
import os from 'node:os';
|
||||||
|
import path from 'node:path';
|
||||||
|
|
||||||
export function createMockConfig(
|
export function createMockConfig(
|
||||||
overrides: Partial<Config> = {},
|
overrides: Partial<Config> = {},
|
||||||
@@ -43,8 +45,8 @@ export function createMockConfig(
|
|||||||
getCheckpointingEnabled: vi.fn().mockReturnValue(false),
|
getCheckpointingEnabled: vi.fn().mockReturnValue(false),
|
||||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
||||||
storage: {
|
storage: {
|
||||||
getProjectTempDir: () => '/tmp',
|
getProjectTempDir: () => os.tmpdir(),
|
||||||
getProjectTempCheckpointsDir: () => '/tmp/checkpoints',
|
getProjectTempCheckpointsDir: () => path.join(os.tmpdir(), 'checkpoints'),
|
||||||
} as Storage,
|
} as Storage,
|
||||||
getTruncateToolOutputThreshold: () =>
|
getTruncateToolOutputThreshold: () =>
|
||||||
DEFAULT_TRUNCATE_TOOL_OUTPUT_THRESHOLD,
|
DEFAULT_TRUNCATE_TOOL_OUTPUT_THRESHOLD,
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
|
|
||||||
import * as fs from 'node:fs';
|
import * as fs from 'node:fs';
|
||||||
import * as path from 'node:path';
|
import * as path from 'node:path';
|
||||||
|
import * as os from 'node:os';
|
||||||
import {
|
import {
|
||||||
beforeAll,
|
beforeAll,
|
||||||
afterAll,
|
afterAll,
|
||||||
@@ -29,7 +30,7 @@ describe('ExtensionManager theme loading', () => {
|
|||||||
|
|
||||||
beforeAll(async () => {
|
beforeAll(async () => {
|
||||||
tempHomeDir = await fs.promises.mkdtemp(
|
tempHomeDir = await fs.promises.mkdtemp(
|
||||||
path.join(fs.realpathSync('/tmp'), 'gemini-cli-test-'),
|
path.join(os.tmpdir(), 'gemini-cli-test-'),
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -32,6 +32,9 @@ const mockSettings = {
|
|||||||
output: {
|
output: {
|
||||||
verbosity: 'info',
|
verbosity: 'info',
|
||||||
},
|
},
|
||||||
|
ui: {
|
||||||
|
enableCompactToolOutput: false,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -97,6 +100,7 @@ describe('MainContent', () => {
|
|||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
vi.mocked(useAlternateBuffer).mockReturnValue(false);
|
vi.mocked(useAlternateBuffer).mockReturnValue(false);
|
||||||
mockSettings.merged.output.verbosity = 'info';
|
mockSettings.merged.output.verbosity = 'info';
|
||||||
|
mockSettings.merged.ui.enableCompactToolOutput = false;
|
||||||
});
|
});
|
||||||
|
|
||||||
afterEach(() => {
|
afterEach(() => {
|
||||||
|
|||||||
+33
-31
@@ -1,5 +1,28 @@
|
|||||||
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
||||||
|
|
||||||
|
exports[`AlternateBufferQuittingDisplay > renders with a tool awaiting confirmation > with_confirming_tool 1`] = `
|
||||||
|
"
|
||||||
|
███ █████████
|
||||||
|
░░░███ ███░░░░░███
|
||||||
|
░░░███ ███ ░░░
|
||||||
|
░░░███░███
|
||||||
|
███░ ░███ █████
|
||||||
|
███░ ░░███ ░░███
|
||||||
|
███░ ░░█████████
|
||||||
|
░░░ ░░░░░░░░░
|
||||||
|
|
||||||
|
Tips for getting started:
|
||||||
|
1. Ask questions, edit files, or run commands.
|
||||||
|
2. Be specific for the best results.
|
||||||
|
3. Create GEMINI.md files to customize your interactions with Gemini.
|
||||||
|
4. /help for more information.
|
||||||
|
|
||||||
|
Action Required (was prompted):
|
||||||
|
|
||||||
|
? confirming_tool Confirming tool description
|
||||||
|
"
|
||||||
|
`;
|
||||||
|
|
||||||
exports[`AlternateBufferQuittingDisplay > renders with active and pending tool messages > with_history_and_pending 1`] = `
|
exports[`AlternateBufferQuittingDisplay > renders with active and pending tool messages > with_history_and_pending 1`] = `
|
||||||
"
|
"
|
||||||
███ █████████
|
███ █████████
|
||||||
@@ -16,20 +39,9 @@ Tips for getting started:
|
|||||||
2. Be specific for the best results.
|
2. Be specific for the best results.
|
||||||
3. Create GEMINI.md files to customize your interactions with Gemini.
|
3. Create GEMINI.md files to customize your interactions with Gemini.
|
||||||
4. /help for more information.
|
4. /help for more information.
|
||||||
╭─────────────────────────────────────────────────────────────────────────────╮
|
✓ tool1 Description for tool 1
|
||||||
│ ✓ tool1 Description for tool 1 │
|
|
||||||
│ │
|
|
||||||
╰─────────────────────────────────────────────────────────────────────────────╯
|
|
||||||
|
|
||||||
╭─────────────────────────────────────────────────────────────────────────────╮
|
✓ tool2 Description for tool 2
|
||||||
│ ✓ tool2 Description for tool 2 │
|
|
||||||
│ │
|
|
||||||
╰─────────────────────────────────────────────────────────────────────────────╯
|
|
||||||
|
|
||||||
╭─────────────────────────────────────────────────────────────────────────────╮
|
|
||||||
│ o tool3 Description for tool 3 │
|
|
||||||
│ │
|
|
||||||
╰─────────────────────────────────────────────────────────────────────────────╯
|
|
||||||
"
|
"
|
||||||
`;
|
`;
|
||||||
|
|
||||||
@@ -67,15 +79,9 @@ Tips for getting started:
|
|||||||
2. Be specific for the best results.
|
2. Be specific for the best results.
|
||||||
3. Create GEMINI.md files to customize your interactions with Gemini.
|
3. Create GEMINI.md files to customize your interactions with Gemini.
|
||||||
4. /help for more information.
|
4. /help for more information.
|
||||||
╭─────────────────────────────────────────────────────────────────────────────╮
|
✓ tool1 Description for tool 1
|
||||||
│ ✓ tool1 Description for tool 1 │
|
|
||||||
│ │
|
|
||||||
╰─────────────────────────────────────────────────────────────────────────────╯
|
|
||||||
|
|
||||||
╭─────────────────────────────────────────────────────────────────────────────╮
|
✓ tool2 Description for tool 2
|
||||||
│ ✓ tool2 Description for tool 2 │
|
|
||||||
│ │
|
|
||||||
╰─────────────────────────────────────────────────────────────────────────────╯
|
|
||||||
"
|
"
|
||||||
`;
|
`;
|
||||||
|
|
||||||
@@ -94,12 +100,7 @@ Tips for getting started:
|
|||||||
1. Ask questions, edit files, or run commands.
|
1. Ask questions, edit files, or run commands.
|
||||||
2. Be specific for the best results.
|
2. Be specific for the best results.
|
||||||
3. Create GEMINI.md files to customize your interactions with Gemini.
|
3. Create GEMINI.md files to customize your interactions with Gemini.
|
||||||
4. /help for more information.
|
4. /help for more information."
|
||||||
╭─────────────────────────────────────────────────────────────────────────────╮
|
|
||||||
│ o tool3 Description for tool 3 │
|
|
||||||
│ │
|
|
||||||
╰─────────────────────────────────────────────────────────────────────────────╯
|
|
||||||
"
|
|
||||||
`;
|
`;
|
||||||
|
|
||||||
exports[`AlternateBufferQuittingDisplay > renders with user and gemini messages > with_user_gemini_messages 1`] = `
|
exports[`AlternateBufferQuittingDisplay > renders with user and gemini messages > with_user_gemini_messages 1`] = `
|
||||||
@@ -118,8 +119,9 @@ Tips for getting started:
|
|||||||
2. Be specific for the best results.
|
2. Be specific for the best results.
|
||||||
3. Create GEMINI.md files to customize your interactions with Gemini.
|
3. Create GEMINI.md files to customize your interactions with Gemini.
|
||||||
4. /help for more information.
|
4. /help for more information.
|
||||||
|
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
|
||||||
> Hello Gemini
|
> Hello Gemini
|
||||||
|
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
|
||||||
✦ Hello User!"
|
✦ Hello User!
|
||||||
|
"
|
||||||
`;
|
`;
|
||||||
|
|||||||
@@ -26,9 +26,8 @@ AppHeader
|
|||||||
│ Line 18 │
|
│ Line 18 │
|
||||||
│ Line 19 │
|
│ Line 19 │
|
||||||
│ Line 20 │
|
│ Line 20 │
|
||||||
│ │
|
|
||||||
╰──────────────────────────────────────────────────────────────────────────────────────────────╯
|
╰──────────────────────────────────────────────────────────────────────────────────────────────╯
|
||||||
ShowMoreLines
|
ShowMoreLines
|
||||||
"
|
"
|
||||||
`;
|
`;
|
||||||
|
|
||||||
@@ -54,7 +53,7 @@ AppHeader
|
|||||||
│ Line 19 █ │
|
│ Line 19 █ │
|
||||||
│ Line 20 █ │
|
│ Line 20 █ │
|
||||||
╰──────────────────────────────────────────────────────────────────────────────────────────────╯
|
╰──────────────────────────────────────────────────────────────────────────────────────────────╯
|
||||||
ShowMoreLines
|
ShowMoreLines
|
||||||
"
|
"
|
||||||
`;
|
`;
|
||||||
|
|
||||||
@@ -79,7 +78,7 @@ exports[`MainContent > MainContent Tool Output Height Logic > 'Normal mode - Con
|
|||||||
│ Line 19 │
|
│ Line 19 │
|
||||||
│ Line 20 │
|
│ Line 20 │
|
||||||
╰──────────────────────────────────────────────────────────────────────────────────────────────╯
|
╰──────────────────────────────────────────────────────────────────────────────────────────────╯
|
||||||
ShowMoreLines
|
ShowMoreLines
|
||||||
"
|
"
|
||||||
`;
|
`;
|
||||||
|
|
||||||
@@ -104,7 +103,7 @@ exports[`MainContent > MainContent Tool Output Height Logic > 'Normal mode - Unc
|
|||||||
│ Line 19 │
|
│ Line 19 │
|
||||||
│ Line 20 │
|
│ Line 20 │
|
||||||
╰──────────────────────────────────────────────────────────────────────────────────────────────╯
|
╰──────────────────────────────────────────────────────────────────────────────────────────────╯
|
||||||
ShowMoreLines
|
ShowMoreLines
|
||||||
"
|
"
|
||||||
`;
|
`;
|
||||||
|
|
||||||
|
|||||||
@@ -10,10 +10,7 @@ exports[`SettingsDialog > Initial Rendering > should render settings list with v
|
|||||||
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
||||||
│ │
|
│ │
|
||||||
│ ▲ │
|
│ ▲ │
|
||||||
│ ● Preview Features (e.g., models) false │
|
│ ● Vim Mode false │
|
||||||
│ Enable preview features (e.g., preview models). │
|
|
||||||
│ │
|
|
||||||
│ Vim Mode false │
|
|
||||||
│ Enable Vim keybindings │
|
│ Enable Vim keybindings │
|
||||||
│ │
|
│ │
|
||||||
│ Enable Auto Update true │
|
│ Enable Auto Update true │
|
||||||
@@ -34,6 +31,9 @@ exports[`SettingsDialog > Initial Rendering > should render settings list with v
|
|||||||
│ Verbose Output History true │
|
│ Verbose Output History true │
|
||||||
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
||||||
│ │
|
│ │
|
||||||
|
│ Auto Theme Switching true │
|
||||||
|
│ Automatically switch between default light and dark themes based on terminal backgro… │
|
||||||
|
│ │
|
||||||
│ ▼ │
|
│ ▼ │
|
||||||
│ │
|
│ │
|
||||||
│ Apply To │
|
│ Apply To │
|
||||||
@@ -41,7 +41,7 @@ exports[`SettingsDialog > Initial Rendering > should render settings list with v
|
|||||||
│ Workspace Settings │
|
│ Workspace Settings │
|
||||||
│ System Settings │
|
│ System Settings │
|
||||||
│ │
|
│ │
|
||||||
│ (Use Enter to select, Tab to change focus, Esc to close) │
|
│ (Use Enter to select, Ctrl+L to reset, Tab to change focus, Esc to close) │
|
||||||
│ │
|
│ │
|
||||||
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
||||||
`;
|
`;
|
||||||
@@ -56,10 +56,7 @@ exports[`SettingsDialog > Snapshot Tests > should render 'accessibility settings
|
|||||||
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
||||||
│ │
|
│ │
|
||||||
│ ▲ │
|
│ ▲ │
|
||||||
│ ● Preview Features (e.g., models) false │
|
│ ● Vim Mode true* │
|
||||||
│ Enable preview features (e.g., preview models). │
|
|
||||||
│ │
|
|
||||||
│ Vim Mode true* │
|
|
||||||
│ Enable Vim keybindings │
|
│ Enable Vim keybindings │
|
||||||
│ │
|
│ │
|
||||||
│ Enable Auto Update true │
|
│ Enable Auto Update true │
|
||||||
@@ -80,6 +77,9 @@ exports[`SettingsDialog > Snapshot Tests > should render 'accessibility settings
|
|||||||
│ Verbose Output History true │
|
│ Verbose Output History true │
|
||||||
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
||||||
│ │
|
│ │
|
||||||
|
│ Auto Theme Switching true │
|
||||||
|
│ Automatically switch between default light and dark themes based on terminal backgro… │
|
||||||
|
│ │
|
||||||
│ ▼ │
|
│ ▼ │
|
||||||
│ │
|
│ │
|
||||||
│ Apply To │
|
│ Apply To │
|
||||||
@@ -87,7 +87,7 @@ exports[`SettingsDialog > Snapshot Tests > should render 'accessibility settings
|
|||||||
│ Workspace Settings │
|
│ Workspace Settings │
|
||||||
│ System Settings │
|
│ System Settings │
|
||||||
│ │
|
│ │
|
||||||
│ (Use Enter to select, Tab to change focus, Esc to close) │
|
│ (Use Enter to select, Ctrl+L to reset, Tab to change focus, Esc to close) │
|
||||||
│ │
|
│ │
|
||||||
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
||||||
`;
|
`;
|
||||||
@@ -102,10 +102,7 @@ exports[`SettingsDialog > Snapshot Tests > should render 'all boolean settings d
|
|||||||
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
||||||
│ │
|
│ │
|
||||||
│ ▲ │
|
│ ▲ │
|
||||||
│ ● Preview Features (e.g., models) false │
|
│ ● Vim Mode false* │
|
||||||
│ Enable preview features (e.g., preview models). │
|
|
||||||
│ │
|
|
||||||
│ Vim Mode false* │
|
|
||||||
│ Enable Vim keybindings │
|
│ Enable Vim keybindings │
|
||||||
│ │
|
│ │
|
||||||
│ Enable Auto Update true* │
|
│ Enable Auto Update true* │
|
||||||
@@ -126,6 +123,9 @@ exports[`SettingsDialog > Snapshot Tests > should render 'all boolean settings d
|
|||||||
│ Verbose Output History true │
|
│ Verbose Output History true │
|
||||||
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
||||||
│ │
|
│ │
|
||||||
|
│ Auto Theme Switching true │
|
||||||
|
│ Automatically switch between default light and dark themes based on terminal backgro… │
|
||||||
|
│ │
|
||||||
│ ▼ │
|
│ ▼ │
|
||||||
│ │
|
│ │
|
||||||
│ Apply To │
|
│ Apply To │
|
||||||
@@ -133,7 +133,7 @@ exports[`SettingsDialog > Snapshot Tests > should render 'all boolean settings d
|
|||||||
│ Workspace Settings │
|
│ Workspace Settings │
|
||||||
│ System Settings │
|
│ System Settings │
|
||||||
│ │
|
│ │
|
||||||
│ (Use Enter to select, Tab to change focus, Esc to close) │
|
│ (Use Enter to select, Ctrl+L to reset, Tab to change focus, Esc to close) │
|
||||||
│ │
|
│ │
|
||||||
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
||||||
`;
|
`;
|
||||||
@@ -148,10 +148,7 @@ exports[`SettingsDialog > Snapshot Tests > should render 'default state' correct
|
|||||||
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
||||||
│ │
|
│ │
|
||||||
│ ▲ │
|
│ ▲ │
|
||||||
│ ● Preview Features (e.g., models) false │
|
│ ● Vim Mode false │
|
||||||
│ Enable preview features (e.g., preview models). │
|
|
||||||
│ │
|
|
||||||
│ Vim Mode false │
|
|
||||||
│ Enable Vim keybindings │
|
│ Enable Vim keybindings │
|
||||||
│ │
|
│ │
|
||||||
│ Enable Auto Update true │
|
│ Enable Auto Update true │
|
||||||
@@ -172,6 +169,9 @@ exports[`SettingsDialog > Snapshot Tests > should render 'default state' correct
|
|||||||
│ Verbose Output History true │
|
│ Verbose Output History true │
|
||||||
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
||||||
│ │
|
│ │
|
||||||
|
│ Auto Theme Switching true │
|
||||||
|
│ Automatically switch between default light and dark themes based on terminal backgro… │
|
||||||
|
│ │
|
||||||
│ ▼ │
|
│ ▼ │
|
||||||
│ │
|
│ │
|
||||||
│ Apply To │
|
│ Apply To │
|
||||||
@@ -179,7 +179,7 @@ exports[`SettingsDialog > Snapshot Tests > should render 'default state' correct
|
|||||||
│ Workspace Settings │
|
│ Workspace Settings │
|
||||||
│ System Settings │
|
│ System Settings │
|
||||||
│ │
|
│ │
|
||||||
│ (Use Enter to select, Tab to change focus, Esc to close) │
|
│ (Use Enter to select, Ctrl+L to reset, Tab to change focus, Esc to close) │
|
||||||
│ │
|
│ │
|
||||||
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
||||||
`;
|
`;
|
||||||
@@ -194,10 +194,7 @@ exports[`SettingsDialog > Snapshot Tests > should render 'file filtering setting
|
|||||||
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
||||||
│ │
|
│ │
|
||||||
│ ▲ │
|
│ ▲ │
|
||||||
│ ● Preview Features (e.g., models) false │
|
│ ● Vim Mode false │
|
||||||
│ Enable preview features (e.g., preview models). │
|
|
||||||
│ │
|
|
||||||
│ Vim Mode false │
|
|
||||||
│ Enable Vim keybindings │
|
│ Enable Vim keybindings │
|
||||||
│ │
|
│ │
|
||||||
│ Enable Auto Update true │
|
│ Enable Auto Update true │
|
||||||
@@ -218,6 +215,9 @@ exports[`SettingsDialog > Snapshot Tests > should render 'file filtering setting
|
|||||||
│ Verbose Output History true │
|
│ Verbose Output History true │
|
||||||
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
||||||
│ │
|
│ │
|
||||||
|
│ Auto Theme Switching true │
|
||||||
|
│ Automatically switch between default light and dark themes based on terminal backgro… │
|
||||||
|
│ │
|
||||||
│ ▼ │
|
│ ▼ │
|
||||||
│ │
|
│ │
|
||||||
│ Apply To │
|
│ Apply To │
|
||||||
@@ -225,7 +225,7 @@ exports[`SettingsDialog > Snapshot Tests > should render 'file filtering setting
|
|||||||
│ Workspace Settings │
|
│ Workspace Settings │
|
||||||
│ System Settings │
|
│ System Settings │
|
||||||
│ │
|
│ │
|
||||||
│ (Use Enter to select, Tab to change focus, Esc to close) │
|
│ (Use Enter to select, Ctrl+L to reset, Tab to change focus, Esc to close) │
|
||||||
│ │
|
│ │
|
||||||
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
||||||
`;
|
`;
|
||||||
@@ -240,9 +240,6 @@ exports[`SettingsDialog > Snapshot Tests > should render 'focused on scope selec
|
|||||||
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
||||||
│ │
|
│ │
|
||||||
│ ▲ │
|
│ ▲ │
|
||||||
│ Preview Features (e.g., models) false │
|
|
||||||
│ Enable preview features (e.g., preview models). │
|
|
||||||
│ │
|
|
||||||
│ Vim Mode false │
|
│ Vim Mode false │
|
||||||
│ Enable Vim keybindings │
|
│ Enable Vim keybindings │
|
||||||
│ │
|
│ │
|
||||||
@@ -264,6 +261,9 @@ exports[`SettingsDialog > Snapshot Tests > should render 'focused on scope selec
|
|||||||
│ Verbose Output History true │
|
│ Verbose Output History true │
|
||||||
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
||||||
│ │
|
│ │
|
||||||
|
│ Auto Theme Switching true │
|
||||||
|
│ Automatically switch between default light and dark themes based on terminal backgro… │
|
||||||
|
│ │
|
||||||
│ ▼ │
|
│ ▼ │
|
||||||
│ │
|
│ │
|
||||||
│ > Apply To │
|
│ > Apply To │
|
||||||
@@ -271,7 +271,7 @@ exports[`SettingsDialog > Snapshot Tests > should render 'focused on scope selec
|
|||||||
│ 2. Workspace Settings │
|
│ 2. Workspace Settings │
|
||||||
│ 3. System Settings │
|
│ 3. System Settings │
|
||||||
│ │
|
│ │
|
||||||
│ (Use Enter to select, Tab to change focus, Esc to close) │
|
│ (Use Enter to select, Ctrl+L to reset, Tab to change focus, Esc to close) │
|
||||||
│ │
|
│ │
|
||||||
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
||||||
`;
|
`;
|
||||||
@@ -286,10 +286,7 @@ exports[`SettingsDialog > Snapshot Tests > should render 'mixed boolean and numb
|
|||||||
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
||||||
│ │
|
│ │
|
||||||
│ ▲ │
|
│ ▲ │
|
||||||
│ ● Preview Features (e.g., models) false │
|
│ ● Vim Mode false* │
|
||||||
│ Enable preview features (e.g., preview models). │
|
|
||||||
│ │
|
|
||||||
│ Vim Mode false* │
|
|
||||||
│ Enable Vim keybindings │
|
│ Enable Vim keybindings │
|
||||||
│ │
|
│ │
|
||||||
│ Enable Auto Update false* │
|
│ Enable Auto Update false* │
|
||||||
@@ -310,6 +307,9 @@ exports[`SettingsDialog > Snapshot Tests > should render 'mixed boolean and numb
|
|||||||
│ Verbose Output History true │
|
│ Verbose Output History true │
|
||||||
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
||||||
│ │
|
│ │
|
||||||
|
│ Auto Theme Switching true │
|
||||||
|
│ Automatically switch between default light and dark themes based on terminal backgro… │
|
||||||
|
│ │
|
||||||
│ ▼ │
|
│ ▼ │
|
||||||
│ │
|
│ │
|
||||||
│ Apply To │
|
│ Apply To │
|
||||||
@@ -317,7 +317,7 @@ exports[`SettingsDialog > Snapshot Tests > should render 'mixed boolean and numb
|
|||||||
│ Workspace Settings │
|
│ Workspace Settings │
|
||||||
│ System Settings │
|
│ System Settings │
|
||||||
│ │
|
│ │
|
||||||
│ (Use Enter to select, Tab to change focus, Esc to close) │
|
│ (Use Enter to select, Ctrl+L to reset, Tab to change focus, Esc to close) │
|
||||||
│ │
|
│ │
|
||||||
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
||||||
`;
|
`;
|
||||||
@@ -332,10 +332,7 @@ exports[`SettingsDialog > Snapshot Tests > should render 'tools and security set
|
|||||||
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
||||||
│ │
|
│ │
|
||||||
│ ▲ │
|
│ ▲ │
|
||||||
│ ● Preview Features (e.g., models) false │
|
│ ● Vim Mode false │
|
||||||
│ Enable preview features (e.g., preview models). │
|
|
||||||
│ │
|
|
||||||
│ Vim Mode false │
|
|
||||||
│ Enable Vim keybindings │
|
│ Enable Vim keybindings │
|
||||||
│ │
|
│ │
|
||||||
│ Enable Auto Update true │
|
│ Enable Auto Update true │
|
||||||
@@ -356,6 +353,9 @@ exports[`SettingsDialog > Snapshot Tests > should render 'tools and security set
|
|||||||
│ Verbose Output History true │
|
│ Verbose Output History true │
|
||||||
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
||||||
│ │
|
│ │
|
||||||
|
│ Auto Theme Switching true │
|
||||||
|
│ Automatically switch between default light and dark themes based on terminal backgro… │
|
||||||
|
│ │
|
||||||
│ ▼ │
|
│ ▼ │
|
||||||
│ │
|
│ │
|
||||||
│ Apply To │
|
│ Apply To │
|
||||||
@@ -363,7 +363,7 @@ exports[`SettingsDialog > Snapshot Tests > should render 'tools and security set
|
|||||||
│ Workspace Settings │
|
│ Workspace Settings │
|
||||||
│ System Settings │
|
│ System Settings │
|
||||||
│ │
|
│ │
|
||||||
│ (Use Enter to select, Tab to change focus, Esc to close) │
|
│ (Use Enter to select, Ctrl+L to reset, Tab to change focus, Esc to close) │
|
||||||
│ │
|
│ │
|
||||||
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
||||||
`;
|
`;
|
||||||
@@ -378,10 +378,7 @@ exports[`SettingsDialog > Snapshot Tests > should render 'various boolean settin
|
|||||||
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
|
||||||
│ │
|
│ │
|
||||||
│ ▲ │
|
│ ▲ │
|
||||||
│ ● Preview Features (e.g., models) false │
|
│ ● Vim Mode true* │
|
||||||
│ Enable preview features (e.g., preview models). │
|
|
||||||
│ │
|
|
||||||
│ Vim Mode true* │
|
|
||||||
│ Enable Vim keybindings │
|
│ Enable Vim keybindings │
|
||||||
│ │
|
│ │
|
||||||
│ Enable Auto Update false* │
|
│ Enable Auto Update false* │
|
||||||
@@ -402,6 +399,9 @@ exports[`SettingsDialog > Snapshot Tests > should render 'various boolean settin
|
|||||||
│ Verbose Output History true │
|
│ Verbose Output History true │
|
||||||
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
│ Show verbose output history. When enabled, output history will include autonomous to… │
|
||||||
│ │
|
│ │
|
||||||
|
│ Auto Theme Switching true │
|
||||||
|
│ Automatically switch between default light and dark themes based on terminal backgro… │
|
||||||
|
│ │
|
||||||
│ ▼ │
|
│ ▼ │
|
||||||
│ │
|
│ │
|
||||||
│ Apply To │
|
│ Apply To │
|
||||||
@@ -409,7 +409,7 @@ exports[`SettingsDialog > Snapshot Tests > should render 'various boolean settin
|
|||||||
│ Workspace Settings │
|
│ Workspace Settings │
|
||||||
│ System Settings │
|
│ System Settings │
|
||||||
│ │
|
│ │
|
||||||
│ (Use Enter to select, Tab to change focus, Esc to close) │
|
│ (Use Enter to select, Ctrl+L to reset, Tab to change focus, Esc to close) │
|
||||||
│ │
|
│ │
|
||||||
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯"
|
||||||
`;
|
`;
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ exports[`ToolConfirmationQueue > calculates availableContentHeight based on avai
|
|||||||
│ 4. No, suggest changes (esc) │
|
│ 4. No, suggest changes (esc) │
|
||||||
│ │
|
│ │
|
||||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||||
Press ctrl-o to show more lines
|
Press ctrl-o to show more lines
|
||||||
"
|
"
|
||||||
`;
|
`;
|
||||||
|
|
||||||
@@ -58,7 +58,7 @@ exports[`ToolConfirmationQueue > renders expansion hint when content is long and
|
|||||||
│ 4. No, suggest changes (esc) │
|
│ 4. No, suggest changes (esc) │
|
||||||
│ │
|
│ │
|
||||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||||
Press ctrl-o to show more lines
|
Press ctrl-o to show more lines
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ import type {
|
|||||||
Config,
|
Config,
|
||||||
} from '@google/gemini-cli-core';
|
} from '@google/gemini-cli-core';
|
||||||
import { renderWithProviders } from '../../../test-utils/render.js';
|
import { renderWithProviders } from '../../../test-utils/render.js';
|
||||||
|
import { createMockSettings } from '../../../test-utils/settings.js';
|
||||||
import { useToolActions } from '../../contexts/ToolActionsContext.js';
|
import { useToolActions } from '../../contexts/ToolActionsContext.js';
|
||||||
import {
|
import {
|
||||||
StreamingState,
|
StreamingState,
|
||||||
@@ -101,6 +102,11 @@ describe('ToolConfirmationMessage Overflow', () => {
|
|||||||
streamingState: StreamingState.WaitingForConfirmation,
|
streamingState: StreamingState.WaitingForConfirmation,
|
||||||
constrainHeight: true,
|
constrainHeight: true,
|
||||||
},
|
},
|
||||||
|
settings: createMockSettings({
|
||||||
|
ui: {
|
||||||
|
enableCompactToolOutput: false,
|
||||||
|
},
|
||||||
|
}),
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@@ -48,13 +48,22 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
enableEventDrivenScheduler: true,
|
enableEventDrivenScheduler: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const commonOptions = {
|
||||||
|
config: baseMockConfig,
|
||||||
|
settings: createMockSettings({
|
||||||
|
ui: {
|
||||||
|
enableCompactToolOutput: false,
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
};
|
||||||
|
|
||||||
describe('Golden Snapshots', () => {
|
describe('Golden Snapshots', () => {
|
||||||
it('renders single successful tool call', () => {
|
it('renders single successful tool call', () => {
|
||||||
const toolCalls = [createToolCall()];
|
const toolCalls = [createToolCall()];
|
||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{
|
{
|
||||||
config: baseMockConfig,
|
...commonOptions,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
||||||
},
|
},
|
||||||
@@ -94,6 +103,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{
|
{
|
||||||
|
...commonOptions,
|
||||||
config: mockConfig,
|
config: mockConfig,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
||||||
@@ -128,6 +138,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{
|
{
|
||||||
|
...commonOptions,
|
||||||
config: mockConfig,
|
config: mockConfig,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
||||||
@@ -150,7 +161,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{
|
{
|
||||||
config: baseMockConfig,
|
...commonOptions,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
||||||
},
|
},
|
||||||
@@ -190,6 +201,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{
|
{
|
||||||
|
...commonOptions,
|
||||||
config: mockConfig,
|
config: mockConfig,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
||||||
@@ -223,7 +235,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
availableTerminalHeight={10}
|
availableTerminalHeight={10}
|
||||||
/>,
|
/>,
|
||||||
{
|
{
|
||||||
config: baseMockConfig,
|
...commonOptions,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
||||||
},
|
},
|
||||||
@@ -242,7 +254,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
isFocused={false}
|
isFocused={false}
|
||||||
/>,
|
/>,
|
||||||
{
|
{
|
||||||
config: baseMockConfig,
|
...commonOptions,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
||||||
},
|
},
|
||||||
@@ -267,7 +279,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
terminalWidth={40}
|
terminalWidth={40}
|
||||||
/>,
|
/>,
|
||||||
{
|
{
|
||||||
config: baseMockConfig,
|
...commonOptions,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
||||||
},
|
},
|
||||||
@@ -281,7 +293,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={[]} />,
|
<ToolGroupMessage {...baseProps} toolCalls={[]} />,
|
||||||
{
|
{
|
||||||
config: baseMockConfig,
|
...commonOptions,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: [] }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: [] }],
|
||||||
},
|
},
|
||||||
@@ -312,7 +324,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />
|
||||||
</Scrollable>,
|
</Scrollable>,
|
||||||
{
|
{
|
||||||
config: baseMockConfig,
|
...commonOptions,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
||||||
},
|
},
|
||||||
@@ -335,7 +347,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{
|
{
|
||||||
config: baseMockConfig,
|
...commonOptions,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
||||||
},
|
},
|
||||||
@@ -369,7 +381,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls2} />
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls2} />
|
||||||
</Scrollable>,
|
</Scrollable>,
|
||||||
{
|
{
|
||||||
config: baseMockConfig,
|
...commonOptions,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [
|
pendingHistoryItems: [
|
||||||
{ type: 'tool_group', tools: toolCalls1 },
|
{ type: 'tool_group', tools: toolCalls1 },
|
||||||
@@ -395,6 +407,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{
|
{
|
||||||
|
...commonOptions,
|
||||||
config: mockConfig,
|
config: mockConfig,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
||||||
@@ -416,7 +429,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{
|
{
|
||||||
config: baseMockConfig,
|
...commonOptions,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
||||||
},
|
},
|
||||||
@@ -438,7 +451,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{
|
{
|
||||||
config: baseMockConfig,
|
...commonOptions,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
||||||
},
|
},
|
||||||
@@ -472,7 +485,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
availableTerminalHeight={20}
|
availableTerminalHeight={20}
|
||||||
/>,
|
/>,
|
||||||
{
|
{
|
||||||
config: baseMockConfig,
|
...commonOptions,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
||||||
},
|
},
|
||||||
@@ -518,6 +531,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{
|
{
|
||||||
|
...commonOptions,
|
||||||
config: mockConfig,
|
config: mockConfig,
|
||||||
uiState: {
|
uiState: {
|
||||||
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
pendingHistoryItems: [{ type: 'tool_group', tools: toolCalls }],
|
||||||
@@ -544,6 +558,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
}),
|
}),
|
||||||
];
|
];
|
||||||
const settings = createMockSettings({
|
const settings = createMockSettings({
|
||||||
|
ui: { enableCompactToolOutput: false },
|
||||||
security: { enablePermanentToolApproval: true },
|
security: { enablePermanentToolApproval: true },
|
||||||
});
|
});
|
||||||
const mockConfig = makeFakeConfig({
|
const mockConfig = makeFakeConfig({
|
||||||
@@ -555,6 +570,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{
|
{
|
||||||
|
...commonOptions,
|
||||||
settings,
|
settings,
|
||||||
config: mockConfig,
|
config: mockConfig,
|
||||||
uiState: {
|
uiState: {
|
||||||
@@ -590,7 +606,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
|
|
||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{ config: mockConfig },
|
{ ...commonOptions, config: mockConfig },
|
||||||
);
|
);
|
||||||
expect(lastFrame()).not.toContain('Allow for all future sessions');
|
expect(lastFrame()).not.toContain('Allow for all future sessions');
|
||||||
expect(lastFrame()).toMatchSnapshot();
|
expect(lastFrame()).toMatchSnapshot();
|
||||||
@@ -617,7 +633,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
|
|
||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{ config: mockConfig },
|
{ ...commonOptions, config: mockConfig },
|
||||||
);
|
);
|
||||||
|
|
||||||
// Should render nothing because all tools in the group are confirming
|
// Should render nothing because all tools in the group are confirming
|
||||||
@@ -650,7 +666,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
|
|
||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{ config: mockConfig },
|
{ ...commonOptions, config: mockConfig },
|
||||||
);
|
);
|
||||||
|
|
||||||
const output = lastFrame();
|
const output = lastFrame();
|
||||||
@@ -679,7 +695,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
toolCalls={toolCalls}
|
toolCalls={toolCalls}
|
||||||
borderBottom={false}
|
borderBottom={false}
|
||||||
/>,
|
/>,
|
||||||
{ config: baseMockConfig },
|
{ ...commonOptions, config: baseMockConfig },
|
||||||
);
|
);
|
||||||
// AskUser tools in progress are rendered by AskUserDialog, so we expect nothing.
|
// AskUser tools in progress are rendered by AskUserDialog, so we expect nothing.
|
||||||
expect(lastFrame()).toMatchSnapshot();
|
expect(lastFrame()).toMatchSnapshot();
|
||||||
@@ -703,7 +719,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
|
|
||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{ config: baseMockConfig },
|
{ ...commonOptions, config: baseMockConfig },
|
||||||
);
|
);
|
||||||
|
|
||||||
expect(lastFrame()).toMatchSnapshot();
|
expect(lastFrame()).toMatchSnapshot();
|
||||||
@@ -723,7 +739,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
|
|
||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{ config: baseMockConfig },
|
{ ...commonOptions, config: baseMockConfig },
|
||||||
);
|
);
|
||||||
|
|
||||||
expect(lastFrame()).toMatchSnapshot();
|
expect(lastFrame()).toMatchSnapshot();
|
||||||
@@ -747,7 +763,7 @@ describe('<ToolGroupMessage />', () => {
|
|||||||
|
|
||||||
const { lastFrame, unmount } = renderWithProviders(
|
const { lastFrame, unmount } = renderWithProviders(
|
||||||
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
<ToolGroupMessage {...baseProps} toolCalls={toolCalls} />,
|
||||||
{ config: baseMockConfig },
|
{ ...commonOptions, config: baseMockConfig },
|
||||||
);
|
);
|
||||||
|
|
||||||
expect(lastFrame()).toMatchSnapshot();
|
expect(lastFrame()).toMatchSnapshot();
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
import { describe, it, expect } from 'vitest';
|
import { describe, it, expect } from 'vitest';
|
||||||
import { ToolGroupMessage } from './ToolGroupMessage.js';
|
import { ToolGroupMessage } from './ToolGroupMessage.js';
|
||||||
import { renderWithProviders } from '../../../test-utils/render.js';
|
import { renderWithProviders } from '../../../test-utils/render.js';
|
||||||
|
import { createMockSettings } from '../../../test-utils/settings.js';
|
||||||
import {
|
import {
|
||||||
StreamingState,
|
StreamingState,
|
||||||
ToolCallStatus,
|
ToolCallStatus,
|
||||||
@@ -50,6 +51,11 @@ describe('ToolResultDisplay Overflow', () => {
|
|||||||
constrainHeight: true,
|
constrainHeight: true,
|
||||||
},
|
},
|
||||||
useAlternateBuffer: false,
|
useAlternateBuffer: false,
|
||||||
|
settings: createMockSettings({
|
||||||
|
ui: {
|
||||||
|
enableCompactToolOutput: false,
|
||||||
|
},
|
||||||
|
}),
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@@ -5,6 +5,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { renderWithProviders } from '../../../test-utils/render.js';
|
import { renderWithProviders } from '../../../test-utils/render.js';
|
||||||
|
import { createMockSettings } from '../../../test-utils/settings.js';
|
||||||
import { describe, it, expect, vi, afterEach } from 'vitest';
|
import { describe, it, expect, vi, afterEach } from 'vitest';
|
||||||
import { ToolGroupMessage } from './ToolGroupMessage.js';
|
import { ToolGroupMessage } from './ToolGroupMessage.js';
|
||||||
import { ToolCallStatus } from '../../types.js';
|
import { ToolCallStatus } from '../../types.js';
|
||||||
@@ -98,6 +99,11 @@ describe('ToolMessage Sticky Header Regression', () => {
|
|||||||
{
|
{
|
||||||
width: terminalWidth,
|
width: terminalWidth,
|
||||||
uiState: { terminalWidth },
|
uiState: { terminalWidth },
|
||||||
|
settings: createMockSettings({
|
||||||
|
ui: {
|
||||||
|
enableCompactToolOutput: false,
|
||||||
|
},
|
||||||
|
}),
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -184,6 +190,11 @@ describe('ToolMessage Sticky Header Regression', () => {
|
|||||||
{
|
{
|
||||||
width: terminalWidth,
|
width: terminalWidth,
|
||||||
uiState: { terminalWidth },
|
uiState: { terminalWidth },
|
||||||
|
settings: createMockSettings({
|
||||||
|
ui: {
|
||||||
|
enableCompactToolOutput: false,
|
||||||
|
},
|
||||||
|
}),
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@@ -161,6 +161,110 @@ exports[`<ShellToolMessage /> > Height Constraints > uses full availableTerminal
|
|||||||
│ │"
|
│ │"
|
||||||
`;
|
`;
|
||||||
|
|
||||||
|
exports[`<ShellToolMessage /> > Height Constraints > uses full availableTerminalHeight when focused in alternate buffer mode 2`] = `
|
||||||
|
"╭──────────────────────────────────────────────────────────────────────────────╮
|
||||||
|
│ ⊷ Shell Command A shell command (Shift+Tab to unfocus) │
|
||||||
|
│ │
|
||||||
|
│ Line 3 │
|
||||||
|
│ Line 4 │
|
||||||
|
│ Line 5 █ │
|
||||||
|
│ Line 6 █ │
|
||||||
|
│ Line 7 █ │
|
||||||
|
│ Line 8 █ │
|
||||||
|
│ Line 9 █ │
|
||||||
|
│ Line 10 █ │
|
||||||
|
│ Line 11 █ │
|
||||||
|
│ Line 12 █ │
|
||||||
|
│ Line 13 █ │
|
||||||
|
│ Line 14 █ │
|
||||||
|
│ Line 15 █ │
|
||||||
|
│ Line 16 █ │
|
||||||
|
│ Line 17 █ │
|
||||||
|
│ Line 18 █ │
|
||||||
|
│ Line 19 █ │
|
||||||
|
│ Line 20 █ │
|
||||||
|
│ Line 21 █ │
|
||||||
|
│ Line 22 █ │
|
||||||
|
│ Line 23 █ │
|
||||||
|
│ Line 24 █ │
|
||||||
|
│ Line 25 █ │
|
||||||
|
│ Line 26 █ │
|
||||||
|
│ Line 27 █ │
|
||||||
|
│ Line 28 █ │
|
||||||
|
│ Line 29 █ │
|
||||||
|
│ Line 30 █ │
|
||||||
|
│ Line 31 █ │
|
||||||
|
│ Line 32 █ │
|
||||||
|
│ Line 33 █ │
|
||||||
|
│ Line 34 █ │
|
||||||
|
│ Line 35 █ │
|
||||||
|
│ Line 36 █ │
|
||||||
|
│ Line 37 █ │
|
||||||
|
│ Line 38 █ │
|
||||||
|
│ Line 39 █ │
|
||||||
|
│ Line 40 █ │
|
||||||
|
│ Line 41 █ │
|
||||||
|
│ Line 42 █ │
|
||||||
|
│ Line 43 █ │
|
||||||
|
│ Line 44 █ │
|
||||||
|
│ Line 45 █ │
|
||||||
|
│ Line 46 █ │
|
||||||
|
│ Line 47 █ │
|
||||||
|
│ Line 48 █ │
|
||||||
|
│ Line 49 █ │
|
||||||
|
│ Line 50 █ │
|
||||||
|
│ Line 51 █ │
|
||||||
|
│ Line 52 █ │
|
||||||
|
│ Line 53 █ │
|
||||||
|
│ Line 54 █ │
|
||||||
|
│ Line 55 █ │
|
||||||
|
│ Line 56 █ │
|
||||||
|
│ Line 57 █ │
|
||||||
|
│ Line 58 █ │
|
||||||
|
│ Line 59 █ │
|
||||||
|
│ Line 60 █ │
|
||||||
|
│ Line 61 █ │
|
||||||
|
│ Line 62 █ │
|
||||||
|
│ Line 63 █ │
|
||||||
|
│ Line 64 █ │
|
||||||
|
│ Line 65 █ │
|
||||||
|
│ Line 66 █ │
|
||||||
|
│ Line 67 █ │
|
||||||
|
│ Line 68 █ │
|
||||||
|
│ Line 69 █ │
|
||||||
|
│ Line 70 █ │
|
||||||
|
│ Line 71 █ │
|
||||||
|
│ Line 72 █ │
|
||||||
|
│ Line 73 █ │
|
||||||
|
│ Line 74 █ │
|
||||||
|
│ Line 75 █ │
|
||||||
|
│ Line 76 █ │
|
||||||
|
│ Line 77 █ │
|
||||||
|
│ Line 78 █ │
|
||||||
|
│ Line 79 █ │
|
||||||
|
│ Line 80 █ │
|
||||||
|
│ Line 81 █ │
|
||||||
|
│ Line 82 █ │
|
||||||
|
│ Line 83 █ │
|
||||||
|
│ Line 84 █ │
|
||||||
|
│ Line 85 █ │
|
||||||
|
│ Line 86 █ │
|
||||||
|
│ Line 87 █ │
|
||||||
|
│ Line 88 █ │
|
||||||
|
│ Line 89 █ │
|
||||||
|
│ Line 90 █ │
|
||||||
|
│ Line 91 █ │
|
||||||
|
│ Line 92 █ │
|
||||||
|
│ Line 93 █ │
|
||||||
|
│ Line 94 █ │
|
||||||
|
│ Line 95 █ │
|
||||||
|
│ Line 96 █ │
|
||||||
|
│ Line 97 █ │
|
||||||
|
│ Line 98 █ │
|
||||||
|
│ Line 99 █ │
|
||||||
|
│ Line 100 █ │"
|
||||||
|
`;
|
||||||
|
|
||||||
exports[`<ShellToolMessage /> > Snapshots > renders in Alternate Buffer mode while focused 1`] = `
|
exports[`<ShellToolMessage /> > Snapshots > renders in Alternate Buffer mode while focused 1`] = `
|
||||||
"╭──────────────────────────────────────────────────────────────────────────────╮
|
"╭──────────────────────────────────────────────────────────────────────────────╮
|
||||||
│ ⊷ Shell Command A shell command (Shift+Tab to unfocus) │
|
│ ⊷ Shell Command A shell command (Shift+Tab to unfocus) │
|
||||||
@@ -169,6 +273,13 @@ exports[`<ShellToolMessage /> > Snapshots > renders in Alternate Buffer mode whi
|
|||||||
│ │"
|
│ │"
|
||||||
`;
|
`;
|
||||||
|
|
||||||
|
exports[`<ShellToolMessage /> > Snapshots > renders in Alternate Buffer mode while focused 2`] = `
|
||||||
|
"╭──────────────────────────────────────────────────────────────────────────────╮
|
||||||
|
│ ⊷ Shell Command A shell command (Shift+Tab to unfocus) │
|
||||||
|
│ │
|
||||||
|
│ Test result │"
|
||||||
|
`;
|
||||||
|
|
||||||
exports[`<ShellToolMessage /> > Snapshots > renders in Alternate Buffer mode while unfocused 1`] = `
|
exports[`<ShellToolMessage /> > Snapshots > renders in Alternate Buffer mode while unfocused 1`] = `
|
||||||
"╭──────────────────────────────────────────────────────────────────────────────╮
|
"╭──────────────────────────────────────────────────────────────────────────────╮
|
||||||
│ ⊷ Shell Command A shell command │
|
│ ⊷ Shell Command A shell command │
|
||||||
|
|||||||
+2
-1
@@ -14,5 +14,6 @@ exports[`ToolConfirmationMessage Overflow > should display "press ctrl-o" hint w
|
|||||||
│ 4. No, suggest changes (esc) │
|
│ 4. No, suggest changes (esc) │
|
||||||
│ │
|
│ │
|
||||||
╰──────────────────────────────────────────────────────────────────────────╯
|
╰──────────────────────────────────────────────────────────────────────────╯
|
||||||
Press ctrl-o to show more lines"
|
Press ctrl-o to show more lines
|
||||||
|
"
|
||||||
`;
|
`;
|
||||||
|
|||||||
+2
-1
@@ -10,5 +10,6 @@ exports[`ToolResultDisplay Overflow > should display "press ctrl-o" hint when co
|
|||||||
│ line 49 │
|
│ line 49 │
|
||||||
│ line 50 │
|
│ line 50 │
|
||||||
╰──────────────────────────────────────────────────────────────────────────╯
|
╰──────────────────────────────────────────────────────────────────────────╯
|
||||||
Press ctrl-o to show more lines"
|
Press ctrl-o to show more lines
|
||||||
|
"
|
||||||
`;
|
`;
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import type { Mock, MockInstance } from 'vitest';
|
|||||||
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
||||||
import { act } from 'react';
|
import { act } from 'react';
|
||||||
import { renderHookWithProviders } from '../../test-utils/render.js';
|
import { renderHookWithProviders } from '../../test-utils/render.js';
|
||||||
|
import { createMockSettings } from '../../test-utils/settings.js';
|
||||||
import { waitFor } from '../../test-utils/async.js';
|
import { waitFor } from '../../test-utils/async.js';
|
||||||
import { useGeminiStream } from './useGeminiStream.js';
|
import { useGeminiStream } from './useGeminiStream.js';
|
||||||
import { useKeypress } from './useKeypress.js';
|
import { useKeypress } from './useKeypress.js';
|
||||||
@@ -293,7 +294,12 @@ describe('useGeminiStream', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
const mockLoadedSettings: LoadedSettings = {
|
const mockLoadedSettings: LoadedSettings = {
|
||||||
merged: { preferredEditor: 'vscode' },
|
merged: {
|
||||||
|
preferredEditor: 'vscode',
|
||||||
|
ui: {
|
||||||
|
enableCompactToolOutput: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
user: { path: '/user/settings.json', settings: {} },
|
user: { path: '/user/settings.json', settings: {} },
|
||||||
workspace: { path: '/workspace/.gemini/settings.json', settings: {} },
|
workspace: { path: '/workspace/.gemini/settings.json', settings: {} },
|
||||||
errors: [],
|
errors: [],
|
||||||
@@ -301,6 +307,12 @@ describe('useGeminiStream', () => {
|
|||||||
setValue: vi.fn(),
|
setValue: vi.fn(),
|
||||||
} as unknown as LoadedSettings;
|
} as unknown as LoadedSettings;
|
||||||
|
|
||||||
|
const commonSettings = createMockSettings({
|
||||||
|
ui: {
|
||||||
|
enableCompactToolOutput: true,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
const renderTestHook = (
|
const renderTestHook = (
|
||||||
initialToolCalls: TrackedToolCall[] = [],
|
initialToolCalls: TrackedToolCall[] = [],
|
||||||
geminiClient?: any,
|
geminiClient?: any,
|
||||||
@@ -384,6 +396,7 @@ describe('useGeminiStream', () => {
|
|||||||
),
|
),
|
||||||
{
|
{
|
||||||
initialProps,
|
initialProps,
|
||||||
|
settings: commonSettings,
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
return {
|
return {
|
||||||
@@ -463,26 +476,30 @@ describe('useGeminiStream', () => {
|
|||||||
modelSwitched = false,
|
modelSwitched = false,
|
||||||
} = options;
|
} = options;
|
||||||
|
|
||||||
return renderHookWithProviders(() =>
|
return renderHookWithProviders(
|
||||||
useGeminiStream(
|
() =>
|
||||||
new MockedGeminiClientClass(mockConfig),
|
useGeminiStream(
|
||||||
[],
|
new MockedGeminiClientClass(mockConfig),
|
||||||
mockAddItem,
|
[],
|
||||||
mockConfig,
|
mockAddItem,
|
||||||
mockLoadedSettings,
|
mockConfig,
|
||||||
mockOnDebugMessage,
|
mockLoadedSettings,
|
||||||
mockHandleSlashCommand,
|
mockOnDebugMessage,
|
||||||
shellModeActive,
|
mockHandleSlashCommand,
|
||||||
() => 'vscode' as EditorType,
|
shellModeActive,
|
||||||
onAuthError,
|
() => 'vscode' as EditorType,
|
||||||
performMemoryRefresh,
|
onAuthError,
|
||||||
modelSwitched,
|
performMemoryRefresh,
|
||||||
setModelSwitched,
|
modelSwitched,
|
||||||
onCancelSubmit,
|
setModelSwitched,
|
||||||
setShellInputFocused,
|
onCancelSubmit,
|
||||||
80,
|
setShellInputFocused,
|
||||||
24,
|
80,
|
||||||
),
|
24,
|
||||||
|
),
|
||||||
|
{
|
||||||
|
settings: commonSettings,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -2023,26 +2040,30 @@ describe('useGeminiStream', () => {
|
|||||||
})(),
|
})(),
|
||||||
);
|
);
|
||||||
|
|
||||||
const { result } = renderHookWithProviders(() =>
|
const { result } = renderHookWithProviders(
|
||||||
useGeminiStream(
|
() =>
|
||||||
new MockedGeminiClientClass(mockConfig),
|
useGeminiStream(
|
||||||
[],
|
new MockedGeminiClientClass(mockConfig),
|
||||||
mockAddItem,
|
[],
|
||||||
mockConfig,
|
mockAddItem,
|
||||||
mockLoadedSettings,
|
mockConfig,
|
||||||
mockOnDebugMessage,
|
mockLoadedSettings,
|
||||||
mockHandleSlashCommand,
|
mockOnDebugMessage,
|
||||||
false,
|
mockHandleSlashCommand,
|
||||||
() => 'vscode' as EditorType,
|
false,
|
||||||
() => {},
|
() => 'vscode' as EditorType,
|
||||||
() => Promise.resolve(),
|
() => {},
|
||||||
false,
|
() => Promise.resolve(),
|
||||||
() => {},
|
false,
|
||||||
() => {},
|
() => {},
|
||||||
() => {},
|
() => {},
|
||||||
80,
|
() => {},
|
||||||
24,
|
80,
|
||||||
),
|
24,
|
||||||
|
),
|
||||||
|
{
|
||||||
|
settings: commonSettings,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
// Submit a query
|
// Submit a query
|
||||||
@@ -2527,26 +2548,30 @@ describe('useGeminiStream', () => {
|
|||||||
})(),
|
})(),
|
||||||
);
|
);
|
||||||
|
|
||||||
const { result } = renderHookWithProviders(() =>
|
const { result } = renderHookWithProviders(
|
||||||
useGeminiStream(
|
() =>
|
||||||
new MockedGeminiClientClass(mockConfig),
|
useGeminiStream(
|
||||||
[],
|
new MockedGeminiClientClass(mockConfig),
|
||||||
mockAddItem,
|
[],
|
||||||
mockConfig,
|
mockAddItem,
|
||||||
mockLoadedSettings,
|
mockConfig,
|
||||||
mockOnDebugMessage,
|
mockLoadedSettings,
|
||||||
mockHandleSlashCommand,
|
mockOnDebugMessage,
|
||||||
false,
|
mockHandleSlashCommand,
|
||||||
() => 'vscode' as EditorType,
|
false,
|
||||||
() => {},
|
() => 'vscode' as EditorType,
|
||||||
() => Promise.resolve(),
|
() => {},
|
||||||
false,
|
() => Promise.resolve(),
|
||||||
() => {},
|
false,
|
||||||
() => {},
|
() => {},
|
||||||
() => {},
|
() => {},
|
||||||
80,
|
() => {},
|
||||||
24,
|
80,
|
||||||
),
|
24,
|
||||||
|
),
|
||||||
|
{
|
||||||
|
settings: commonSettings,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
// Submit first query to set a thought
|
// Submit first query to set a thought
|
||||||
@@ -2609,26 +2634,30 @@ describe('useGeminiStream', () => {
|
|||||||
0,
|
0,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
const { result, rerender } = renderHookWithProviders(() =>
|
const { result, rerender } = renderHookWithProviders(
|
||||||
useGeminiStream(
|
() =>
|
||||||
mockConfig.getGeminiClient(),
|
useGeminiStream(
|
||||||
[],
|
mockConfig.getGeminiClient(),
|
||||||
mockAddItem,
|
[],
|
||||||
mockConfig,
|
mockAddItem,
|
||||||
mockLoadedSettings,
|
mockConfig,
|
||||||
mockOnDebugMessage,
|
mockLoadedSettings,
|
||||||
mockHandleSlashCommand,
|
mockOnDebugMessage,
|
||||||
false,
|
mockHandleSlashCommand,
|
||||||
() => 'vscode' as EditorType,
|
false,
|
||||||
() => {},
|
() => 'vscode' as EditorType,
|
||||||
() => Promise.resolve(),
|
() => {},
|
||||||
false,
|
() => Promise.resolve(),
|
||||||
() => {},
|
false,
|
||||||
() => {},
|
() => {},
|
||||||
() => {},
|
() => {},
|
||||||
80,
|
() => {},
|
||||||
24,
|
80,
|
||||||
),
|
24,
|
||||||
|
),
|
||||||
|
{
|
||||||
|
settings: commonSettings,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
const firstResult = result.current.pendingHistoryItems;
|
const firstResult = result.current.pendingHistoryItems;
|
||||||
@@ -2680,26 +2709,30 @@ describe('useGeminiStream', () => {
|
|||||||
})(),
|
})(),
|
||||||
);
|
);
|
||||||
|
|
||||||
const { result } = renderHookWithProviders(() =>
|
const { result } = renderHookWithProviders(
|
||||||
useGeminiStream(
|
() =>
|
||||||
new MockedGeminiClientClass(mockConfig),
|
useGeminiStream(
|
||||||
[],
|
new MockedGeminiClientClass(mockConfig),
|
||||||
mockAddItem,
|
[],
|
||||||
mockConfig,
|
mockAddItem,
|
||||||
mockLoadedSettings,
|
mockConfig,
|
||||||
mockOnDebugMessage,
|
mockLoadedSettings,
|
||||||
mockHandleSlashCommand,
|
mockOnDebugMessage,
|
||||||
false,
|
mockHandleSlashCommand,
|
||||||
() => 'vscode' as EditorType,
|
false,
|
||||||
() => {},
|
() => 'vscode' as EditorType,
|
||||||
() => Promise.resolve(),
|
() => {},
|
||||||
false,
|
() => Promise.resolve(),
|
||||||
() => {},
|
false,
|
||||||
() => {},
|
() => {},
|
||||||
() => {},
|
() => {},
|
||||||
80,
|
() => {},
|
||||||
24,
|
80,
|
||||||
),
|
24,
|
||||||
|
),
|
||||||
|
{
|
||||||
|
settings: commonSettings,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
// Submit query
|
// Submit query
|
||||||
@@ -2737,26 +2770,30 @@ describe('useGeminiStream', () => {
|
|||||||
})(),
|
})(),
|
||||||
);
|
);
|
||||||
|
|
||||||
const { result } = renderHookWithProviders(() =>
|
const { result } = renderHookWithProviders(
|
||||||
useGeminiStream(
|
() =>
|
||||||
new MockedGeminiClientClass(mockConfig),
|
useGeminiStream(
|
||||||
[],
|
new MockedGeminiClientClass(mockConfig),
|
||||||
mockAddItem,
|
[],
|
||||||
mockConfig,
|
mockAddItem,
|
||||||
mockLoadedSettings,
|
mockConfig,
|
||||||
mockOnDebugMessage,
|
mockLoadedSettings,
|
||||||
mockHandleSlashCommand,
|
mockOnDebugMessage,
|
||||||
false,
|
mockHandleSlashCommand,
|
||||||
() => 'vscode' as EditorType,
|
false,
|
||||||
() => {},
|
() => 'vscode' as EditorType,
|
||||||
() => Promise.resolve(),
|
() => {},
|
||||||
false,
|
() => Promise.resolve(),
|
||||||
() => {},
|
false,
|
||||||
() => {},
|
() => {},
|
||||||
() => {},
|
() => {},
|
||||||
80,
|
() => {},
|
||||||
24,
|
80,
|
||||||
),
|
24,
|
||||||
|
),
|
||||||
|
{
|
||||||
|
settings: commonSettings,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
// Submit query
|
// Submit query
|
||||||
@@ -2805,26 +2842,30 @@ describe('useGeminiStream', () => {
|
|||||||
})(),
|
})(),
|
||||||
);
|
);
|
||||||
|
|
||||||
const { result } = renderHookWithProviders(() =>
|
const { result } = renderHookWithProviders(
|
||||||
useGeminiStream(
|
() =>
|
||||||
new MockedGeminiClientClass(mockConfig),
|
useGeminiStream(
|
||||||
[],
|
new MockedGeminiClientClass(mockConfig),
|
||||||
mockAddItem,
|
[],
|
||||||
mockConfig,
|
mockAddItem,
|
||||||
mockLoadedSettings,
|
mockConfig,
|
||||||
mockOnDebugMessage,
|
mockLoadedSettings,
|
||||||
mockHandleSlashCommand,
|
mockOnDebugMessage,
|
||||||
false,
|
mockHandleSlashCommand,
|
||||||
() => 'vscode' as EditorType,
|
false,
|
||||||
() => {},
|
() => 'vscode' as EditorType,
|
||||||
() => Promise.resolve(),
|
() => {},
|
||||||
false,
|
() => Promise.resolve(),
|
||||||
() => {},
|
false,
|
||||||
() => {},
|
() => {},
|
||||||
() => {},
|
() => {},
|
||||||
80,
|
() => {},
|
||||||
24,
|
80,
|
||||||
),
|
24,
|
||||||
|
),
|
||||||
|
{
|
||||||
|
settings: commonSettings,
|
||||||
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
// Submit query
|
// Submit query
|
||||||
|
|||||||
Reference in New Issue
Block a user