Download packages/cli/src/ui/components/AboutBox.test.tsx from SaylorTwift/gemini-cli: direct link, hf CLI and curl.
- Browser
- Download file 2.33 kB
-
https://huggingface.co/SaylorTwift/gemini-cli/resolve/main/packages/cli/src/ui/components/AboutBox.test.tsx
- Command line
-
hf download hf://SaylorTwift/gemini-cli/packages/cli/src/ui/components/AboutBox.test.tsx
-
curl -L -o AboutBox.test.tsx https://huggingface.co/SaylorTwift/gemini-cli/resolve/main/packages/cli/src/ui/components/AboutBox.test.tsx
2.33 kB
| /** | |
| * @license | |
| * Copyright 2025 Google LLC | |
| * SPDX-License-Identifier: Apache-2.0 | |
| */ | |
| import { renderWithProviders } from '../../test-utils/render.js'; | |
| import { AboutBox } from './AboutBox.js'; | |
| import { describe, it, expect, vi } from 'vitest'; | |
| // Mock GIT_COMMIT_INFO | |
| vi.mock('../../generated/git-commit.js', () => ({ | |
| GIT_COMMIT_INFO: 'mock-commit-hash', | |
| })); | |
| describe('AboutBox', () => { | |
| const defaultProps = { | |
| cliVersion: '1.0.0', | |
| osVersion: 'macOS', | |
| sandboxEnv: 'default', | |
| modelVersion: 'gemini-pro', | |
| selectedAuthType: 'oauth', | |
| gcpProject: '', | |
| ideClient: '', | |
| }; | |
| it('renders with required props', async () => { | |
| const { lastFrame, unmount } = await renderWithProviders( | |
| <AboutBox {...defaultProps} />, | |
| ); | |
| const output = lastFrame(); | |
| expect(output).toContain('About Gemini CLI'); | |
| expect(output).toContain('1.0.0'); | |
| expect(output).toContain('mock-commit-hash'); | |
| expect(output).toContain('gemini-pro'); | |
| expect(output).toContain('default'); | |
| expect(output).toContain('macOS'); | |
| expect(output).toContain('Signed in with Google'); | |
| unmount(); | |
| }); | |
| it.each([ | |
| ['gcpProject', 'my-project', 'GCP Project'], | |
| ['ideClient', 'vscode', 'IDE Client'], | |
| ['tier', 'Enterprise', 'Tier'], | |
| ])('renders optional prop %s', async (prop, value, label) => { | |
| const props = { ...defaultProps, [prop]: value }; | |
| const { lastFrame, unmount } = await renderWithProviders( | |
| <AboutBox {...props} />, | |
| ); | |
| const output = lastFrame(); | |
| expect(output).toContain(label); | |
| expect(output).toContain(value); | |
| unmount(); | |
| }); | |
| it('renders Auth Method with email when userEmail is provided', async () => { | |
| const props = { ...defaultProps, userEmail: 'test@example.com' }; | |
| const { lastFrame, unmount } = await renderWithProviders( | |
| <AboutBox {...props} />, | |
| ); | |
| const output = lastFrame(); | |
| expect(output).toContain('Signed in with Google (test@example.com)'); | |
| unmount(); | |
| }); | |
| it('renders Auth Method correctly when not oauth', async () => { | |
| const props = { ...defaultProps, selectedAuthType: 'api-key' }; | |
| const { lastFrame, unmount } = await renderWithProviders( | |
| <AboutBox {...props} />, | |
| ); | |
| const output = lastFrame(); | |
| expect(output).toContain('api-key'); | |
| unmount(); | |
| }); | |
| }); | |