Download packages/cli/src/ui/components/views/ChatList.test.tsx from SaylorTwift/gemini-cli: direct link, hf CLI and curl.
- Browser
- Download file 1.42 kB
-
https://huggingface.co/SaylorTwift/gemini-cli/resolve/main/packages/cli/src/ui/components/views/ChatList.test.tsx
- Command line
-
hf download hf://SaylorTwift/gemini-cli/packages/cli/src/ui/components/views/ChatList.test.tsx
-
curl -L -o ChatList.test.tsx https://huggingface.co/SaylorTwift/gemini-cli/resolve/main/packages/cli/src/ui/components/views/ChatList.test.tsx
1.42 kB
| /** | |
| * @license | |
| * Copyright 2025 Google LLC | |
| * SPDX-License-Identifier: Apache-2.0 | |
| */ | |
| import { render } from '../../../test-utils/render.js'; | |
| import { describe, it, expect } from 'vitest'; | |
| import { ChatList } from './ChatList.js'; | |
| import type { ChatDetail } from '../../types.js'; | |
| const mockChats: ChatDetail[] = [ | |
| { | |
| name: 'chat-1', | |
| mtime: '2025-10-02T10:00:00.000Z', | |
| }, | |
| { | |
| name: 'another-chat', | |
| mtime: '2025-10-01T12:30:00.000Z', | |
| }, | |
| ]; | |
| describe('<ChatList />', () => { | |
| it('renders correctly with a list of chats', async () => { | |
| const { lastFrame, unmount } = await render(<ChatList chats={mockChats} />); | |
| expect(lastFrame()).toMatchSnapshot(); | |
| unmount(); | |
| }); | |
| it('renders correctly with no chats', async () => { | |
| const { lastFrame, unmount } = await render(<ChatList chats={[]} />); | |
| expect(lastFrame()).toContain('No saved conversation checkpoints found.'); | |
| expect(lastFrame()).toMatchSnapshot(); | |
| unmount(); | |
| }); | |
| it('handles invalid date formats gracefully', async () => { | |
| const mockChatsWithInvalidDate: ChatDetail[] = [ | |
| { | |
| name: 'bad-date-chat', | |
| mtime: 'an-invalid-date-string', | |
| }, | |
| ]; | |
| const { lastFrame, unmount } = await render( | |
| <ChatList chats={mockChatsWithInvalidDate} />, | |
| ); | |
| expect(lastFrame()).toContain('(Invalid Date)'); | |
| expect(lastFrame()).toMatchSnapshot(); | |
| unmount(); | |
| }); | |
| }); | |