Improve test coverage for cli/src/ui/components (#13598)

This commit is contained in:
Megha Bansal
2025-11-22 08:17:29 +05:30
committed by GitHub
parent bdf80ea7c0
commit e205a468d9
48 changed files with 2897 additions and 51 deletions

View File

@@ -0,0 +1,55 @@
/**
* @license
* Copyright 2025 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
import { render } from '../../test-utils/render.js';
import { MemoryUsageDisplay } from './MemoryUsageDisplay.js';
import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
import process from 'node:process';
import { act } from 'react';
describe('MemoryUsageDisplay', () => {
beforeEach(() => {
vi.useFakeTimers();
vi.clearAllMocks();
// Mock process.memoryUsage
vi.spyOn(process, 'memoryUsage').mockReturnValue({
rss: 1024 * 1024 * 50, // 50MB
heapTotal: 0,
heapUsed: 0,
external: 0,
arrayBuffers: 0,
});
});
afterEach(() => {
vi.useRealTimers();
vi.restoreAllMocks();
});
it('renders memory usage', () => {
const { lastFrame } = render(<MemoryUsageDisplay />);
expect(lastFrame()).toContain('50.0 MB');
});
it('updates memory usage over time', async () => {
const { lastFrame } = render(<MemoryUsageDisplay />);
expect(lastFrame()).toContain('50.0 MB');
vi.mocked(process.memoryUsage).mockReturnValue({
rss: 1024 * 1024 * 100, // 100MB
heapTotal: 0,
heapUsed: 0,
external: 0,
arrayBuffers: 0,
});
await act(async () => {
vi.advanceTimersByTime(2000);
});
expect(lastFrame()).toContain('100.0 MB');
});
});