Download scripts/tests/telemetry_gcp.test.ts from SaylorTwift/gemini-cli: direct link, hf CLI and curl.
- Browser
- Download file 1.54 kB
-
https://huggingface.co/SaylorTwift/gemini-cli/resolve/main/scripts/tests/telemetry_gcp.test.ts
- Command line
-
hf download hf://SaylorTwift/gemini-cli/scripts/tests/telemetry_gcp.test.ts
-
curl -L -o telemetry_gcp.test.ts https://huggingface.co/SaylorTwift/gemini-cli/resolve/main/scripts/tests/telemetry_gcp.test.ts
1.54 kB
| /** | |
| * @license | |
| * Copyright 2025 Google LLC | |
| * SPDX-License-Identifier: Apache-2.0 | |
| */ | |
| import { vi, describe, it, expect, beforeEach, afterEach } from 'vitest'; | |
| const mockSpawn = vi.fn(() => ({ on: vi.fn(), pid: 123 })); | |
| vi.mock('node:child_process', () => ({ | |
| spawn: mockSpawn, | |
| execSync: vi.fn(), | |
| })); | |
| vi.mock('node:fs', () => ({ | |
| readFileSync: vi.fn(), | |
| writeFileSync: vi.fn(), | |
| openSync: vi.fn(() => 1), | |
| unlinkSync: vi.fn(), | |
| mkdirSync: vi.fn(), | |
| })); | |
| vi.mock('../telemetry_utils.js', () => ({ | |
| ensureBinary: vi.fn(() => Promise.resolve('/fake/path/to/otelcol-contrib')), | |
| waitForPort: vi.fn(() => Promise.resolve()), | |
| manageTelemetrySettings: vi.fn(), | |
| registerCleanup: vi.fn(), | |
| fileExists: vi.fn(() => true), // Assume all files exist for simplicity | |
| OTEL_DIR: '/tmp/otel', | |
| BIN_DIR: '/tmp/bin', | |
| })); | |
| describe('telemetry_gcp.js', () => { | |
| beforeEach(() => { | |
| vi.resetModules(); // This is key to re-run the script | |
| vi.clearAllMocks(); | |
| process.env.OTLP_GOOGLE_CLOUD_PROJECT = 'test-project'; | |
| // Clear the env var before each test | |
| delete process.env.GEMINI_CLI_CREDENTIALS_PATH; | |
| }); | |
| afterEach(() => { | |
| delete process.env.OTLP_GOOGLE_CLOUD_PROJECT; | |
| }); | |
| it('should not set GOOGLE_APPLICATION_CREDENTIALS when env var is not set', async () => { | |
| await import('../telemetry_gcp.js'); | |
| expect(mockSpawn).toHaveBeenCalled(); | |
| const spawnOptions = mockSpawn.mock.calls[0][2]; | |
| expect(spawnOptions?.env).not.toHaveProperty( | |
| 'GOOGLE_APPLICATION_CREDENTIALS', | |
| ); | |
| }); | |
| }); | |