mirror of
https://github.com/cita-777/metapi.git
synced 2026-11-03 06:04:15 +08:00
- Introduced `NormalizedContentBlock`, `NormalizedUsage`, and related types for structured data handling. - Implemented utility functions for creating and merging normalized usage statistics. - Added a new module for shared transformers to manage chat formats. feat: Implement app local state management - Created functions to clear application installation state and manage local storage keys. - Added constants for theme and user profile storage keys. test: Add tests for BrandIcon component rendering - Implemented tests to ensure BrandIcon does not force a colored background for recognized brands. test: Enhance ModelAnalysisPanel tests - Added tests for rendering token summaries with compact units in ModelAnalysisPanel. test: Add tests for ModernSelect component - Implemented tests to verify icon rendering for selected options in ModernSelect. test: Add number formatting tests - Created tests for `formatCompactTokenMetric` to validate token formatting logic. feat: Implement account creation intent handling - Added logic to handle session and API key creation intents in the Accounts page. test: Add tests for dashboard performance card - Implemented tests to verify rendering of performance metrics in the dashboard. feat: Implement default connection segment resolution - Added logic to determine initial connection segments based on platform types. test: Add tests for settings factory reset functionality - Implemented tests to verify the factory reset process and local state clearing. test: Add tests for site creation redirect logic - Implemented tests to verify redirection based on site capabilities during creation. test: Add tests for token routes refresh decision action - Implemented tests to verify refresh decision actions in TokenRoutes. test: Add tests for token routes snapshot load - Implemented tests to verify loading of cached snapshot data in TokenRoutes.
18 lines
561 B
TypeScript
18 lines
561 B
TypeScript
import { describe, expect, it } from 'vitest';
|
|
import { formatCompactTokenMetric } from './numberFormat.js';
|
|
|
|
describe('formatCompactTokenMetric', () => {
|
|
it('keeps small values uncompressed', () => {
|
|
expect(formatCompactTokenMetric(950)).toBe('950');
|
|
});
|
|
|
|
it('formats thousands with K suffix', () => {
|
|
expect(formatCompactTokenMetric(7_974)).toBe('8K');
|
|
});
|
|
|
|
it('formats millions with M suffix', () => {
|
|
expect(formatCompactTokenMetric(1_800_000)).toBe('1.8M');
|
|
expect(formatCompactTokenMetric(611_540_335)).toBe('611.5M');
|
|
});
|
|
});
|