Download packages/cli/src/ui/components/messages/HintMessage.test.tsx from SaylorTwift/gemini-cli: direct link, hf CLI and curl.
- Browser
- Download file 1.68 kB
-
https://huggingface.co/SaylorTwift/gemini-cli/resolve/main/packages/cli/src/ui/components/messages/HintMessage.test.tsx
- Command line
-
hf download hf://SaylorTwift/gemini-cli/packages/cli/src/ui/components/messages/HintMessage.test.tsx
-
curl -L -o HintMessage.test.tsx https://huggingface.co/SaylorTwift/gemini-cli/resolve/main/packages/cli/src/ui/components/messages/HintMessage.test.tsx
1.68 kB
| /** | |
| * @license | |
| * Copyright 2025 Google LLC | |
| * SPDX-License-Identifier: Apache-2.0 | |
| */ | |
| import { renderWithProviders } from '../../../test-utils/render.js'; | |
| import { HintMessage } from './HintMessage.js'; | |
| import { describe, it, expect, vi } from 'vitest'; | |
| import { makeFakeConfig } from '@google/gemini-cli-core'; | |
| describe('HintMessage', () => { | |
| afterEach(() => { | |
| vi.unstubAllEnvs(); | |
| vi.restoreAllMocks(); | |
| }); | |
| it('renders normal hint message with correct prefix', async () => { | |
| const { lastFrame, unmount } = await renderWithProviders( | |
| <HintMessage text="Try this instead" />, | |
| { width: 80 }, | |
| ); | |
| const output = lastFrame(); | |
| expect(output).toContain('π‘'); | |
| expect(output).toContain('Steering Hint: Try this instead'); | |
| unmount(); | |
| }); | |
| describe('with NO_COLOR set', () => { | |
| beforeEach(() => { | |
| vi.stubEnv('NO_COLOR', '1'); | |
| }); | |
| it('uses margins instead of background blocks when NO_COLOR is set', async () => { | |
| const { lastFrame, unmount } = await renderWithProviders( | |
| <HintMessage text="Try this instead" />, | |
| { width: 80, config: makeFakeConfig({ useBackgroundColor: true }) }, | |
| ); | |
| const output = lastFrame(); | |
| // In NO_COLOR mode, the block characters (β/β) should NOT be present. | |
| expect(output).not.toContain('β'); | |
| expect(output).not.toContain('β'); | |
| const lines = output.split('\n').filter((l) => l.trim() !== ''); | |
| expect(lines).toHaveLength(1); | |
| expect(lines[0]).toContain('π‘'); | |
| expect(lines[0]).toContain('Steering Hint: Try this instead'); | |
| expect(output).toMatchSnapshot(); | |
| unmount(); | |
| }); | |
| }); | |
| }); | |