Files
EasyCLIProxyAPI/tests/versionManagement.test.ts
T
lzt404 32b47575b5 feat: redesign version management and restore core after updates
- Add a dedicated version management page
- Improve app, core, and model catalog status displays
- Preserve the core runtime state during updates
- Automatically restart the core after successful, failed, or cancelled updates
- Add tests for version management and core runtime restoration
2026-08-26 01:56:46 +08:00

20 lines
902 B
TypeScript

import { describe, expect, it } from 'bun:test';
import { displayAppVersion } from '../src/pages/VersionManagementPage';
import { appUpdateIndicatorState } from '../src/appUpdateModel';
describe('VersionManagement helper functions', () => {
it('formats app versions with v prefix properly', () => {
expect(displayAppVersion('1.0.0')).toBe('v1.0.0');
expect(displayAppVersion('v1.2.3')).toBe('v1.2.3');
expect(displayAppVersion(' 2.3.4 ')).toBe('v2.3.4');
expect(displayAppVersion(' v3.4.5 ')).toBe('v3.4.5');
});
it('resolves update indicators based on availability and processing state', () => {
expect(appUpdateIndicatorState(true, false)).toBe('available');
expect(appUpdateIndicatorState(true, true)).toBe('processing');
expect(appUpdateIndicatorState(false, true)).toBe('processing');
expect(appUpdateIndicatorState(false, false)).toBeNull();
});
});