slopus--happy
98e40dac97
CLI Smoke Test / smoke-test-linux (20) (push) Has been cancelled
CLI Smoke Test / smoke-test-linux (24) (push) Has been cancelled
CLI Smoke Test / smoke-test-windows (20) (push) Has been cancelled
CLI Smoke Test / smoke-test-windows (24) (push) Has been cancelled
Expo App TypeScript typecheck / typecheck (push) Has been cancelled
32 行
1.3 KiB
TypeScript
32 行
1.3 KiB
TypeScript
import { describe, expect, it } from 'vitest';
|
|
import {
|
|
clampContextSize,
|
|
getContextUsageLevel,
|
|
getContextUsagePercentage,
|
|
resolveStatusBarGitBranch,
|
|
} from './sessionStatusBar';
|
|
|
|
describe('session status bar helpers', () => {
|
|
it('clamps context values to the valid range', () => {
|
|
expect(clampContextSize(-10, 100)).toBe(0);
|
|
expect(clampContextSize(50, 100)).toBe(50);
|
|
expect(clampContextSize(120, 100)).toBe(100);
|
|
expect(clampContextSize(Number.NaN, 100)).toBe(0);
|
|
});
|
|
|
|
it('calculates context percentages and levels', () => {
|
|
expect(getContextUsagePercentage(45, 100)).toBe(45);
|
|
expect(getContextUsageLevel(89, 100)).toBe('normal');
|
|
expect(getContextUsageLevel(90, 100)).toBe('warning');
|
|
expect(getContextUsageLevel(95, 100)).toBe('critical');
|
|
});
|
|
|
|
it('falls back to metadata git branch when git status has no branch', () => {
|
|
expect(resolveStatusBarGitBranch('main', 'metadata-main')).toBe('main');
|
|
expect(resolveStatusBarGitBranch(null, 'fix/session')).toBe('fix/session');
|
|
expect(resolveStatusBarGitBranch('', 'fix/session')).toBe('fix/session');
|
|
expect(resolveStatusBarGitBranch(' ', 'fix/session')).toBe('fix/session');
|
|
expect(resolveStatusBarGitBranch(null, null)).toBe(null);
|
|
});
|
|
});
|