fix(versions): install bundled core and separate version cards

- Replace Reinstall with Install Bundled Core using the local archive
- Detect bundled core availability and update installation messages
- Separate version cards and refine spacing for narrow windows
- Update translations and mock behavior with installation regression tests
This commit is contained in:
lzt404 committed 2026-10-04 17:31:52 +08:00
1 parent 5a5eab96e2
commit 4d1afc82ef
8 files changed
+87 -37

No files matched your search

+19
View File
@@ -19,6 +19,25 @@ describe('browser mock options', () => {
});
describe('browser mock runtime', () => {
for (const scenario of ['running', 'empty'] as const) {
test(`installs the bundled version independently of the latest release (${scenario})`, async () => {
const runtime = createBrowserMockRuntime(scenario);
const bundled = await runtime.invoke('detect_bundled_core') as { version: string; assetName: string };
const latest = await runtime.invoke('check_latest_core') as { version: string };
expect(bundled.version).not.toBe(latest.version);
if (scenario === 'running') {
await runtime.invoke('install_core_version', { version: latest.version });
}
expect(await runtime.invoke('install_bundled_core')).toMatchObject(bundled);
expect(await runtime.invoke('get_core_status')).toMatchObject({
installed: true,
currentVersion: bundled.version,
running: scenario === 'running',
});
});
}
test('models the core process lifecycle and emits status events', async () => {
const events: Array<{ event: string; payload: unknown }> = [];
const runtime = createBrowserMockRuntime('stopped', (event, payload) => {