summaryrefslogtreecommitdiff
path: root/packages/cli/src/ui/hooks/useCompletion.integration.test.ts
diff options
context:
space:
mode:
authorAbhi <[email protected]>2025-07-22 00:34:55 -0400
committerGitHub <[email protected]>2025-07-22 04:34:55 +0000
commit9daead63ddc4a0bddad05ec9f4bb7c0726da44f4 (patch)
treea756014f436f4cc356ca334a45494386027e7b4e /packages/cli/src/ui/hooks/useCompletion.integration.test.ts
parent5f813ef51076177aadccc0046f2182310d6b0a1a (diff)
(feat): Initial Version of Custom Commands (#4572)
Diffstat (limited to 'packages/cli/src/ui/hooks/useCompletion.integration.test.ts')
-rw-r--r--packages/cli/src/ui/hooks/useCompletion.integration.test.ts29
1 files changed, 26 insertions, 3 deletions
diff --git a/packages/cli/src/ui/hooks/useCompletion.integration.test.ts b/packages/cli/src/ui/hooks/useCompletion.integration.test.ts
index 02162159..840d2814 100644
--- a/packages/cli/src/ui/hooks/useCompletion.integration.test.ts
+++ b/packages/cli/src/ui/hooks/useCompletion.integration.test.ts
@@ -10,7 +10,11 @@ import { renderHook, act } from '@testing-library/react';
import { useCompletion } from './useCompletion.js';
import * as fs from 'fs/promises';
import { glob } from 'glob';
-import { CommandContext, SlashCommand } from '../commands/types.js';
+import {
+ CommandContext,
+ CommandKind,
+ SlashCommand,
+} from '../commands/types.js';
import { Config, FileDiscoveryService } from '@google/gemini-cli-core';
interface MockConfig {
@@ -43,8 +47,18 @@ describe('useCompletion git-aware filtering integration', () => {
const testCwd = '/test/project';
const slashCommands = [
- { name: 'help', description: 'Show help', action: vi.fn() },
- { name: 'clear', description: 'Clear screen', action: vi.fn() },
+ {
+ name: 'help',
+ description: 'Show help',
+ kind: CommandKind.BUILT_IN,
+ action: vi.fn(),
+ },
+ {
+ name: 'clear',
+ description: 'Clear screen',
+ kind: CommandKind.BUILT_IN,
+ action: vi.fn(),
+ },
];
// A minimal mock is sufficient for these tests.
@@ -56,31 +70,37 @@ describe('useCompletion git-aware filtering integration', () => {
altNames: ['?'],
description: 'Show help',
action: vi.fn(),
+ kind: CommandKind.BUILT_IN,
},
{
name: 'stats',
altNames: ['usage'],
description: 'check session stats. Usage: /stats [model|tools]',
action: vi.fn(),
+ kind: CommandKind.BUILT_IN,
},
{
name: 'clear',
description: 'Clear the screen',
action: vi.fn(),
+ kind: CommandKind.BUILT_IN,
},
{
name: 'memory',
description: 'Manage memory',
+ kind: CommandKind.BUILT_IN,
// This command is a parent, no action.
subCommands: [
{
name: 'show',
description: 'Show memory',
+ kind: CommandKind.BUILT_IN,
action: vi.fn(),
},
{
name: 'add',
description: 'Add to memory',
+ kind: CommandKind.BUILT_IN,
action: vi.fn(),
},
],
@@ -88,15 +108,18 @@ describe('useCompletion git-aware filtering integration', () => {
{
name: 'chat',
description: 'Manage chat history',
+ kind: CommandKind.BUILT_IN,
subCommands: [
{
name: 'save',
description: 'Save chat',
+ kind: CommandKind.BUILT_IN,
action: vi.fn(),
},
{
name: 'resume',
description: 'Resume a saved chat',
+ kind: CommandKind.BUILT_IN,
action: vi.fn(),
// This command provides its own argument completions
completion: vi