Accumulate OpenCode settings restarts behind Apply & Restart
Defer OpenCode reloads after settings mutations, track pending changes, and expose a top-right Apply & Restart OpenCode action with a counter so sessions stay available until the user explicitly applies. Co-authored-by: Serhii Dziupin <makeittech@users.noreply.github.com>
This commit is contained in:
co-authored by
Serhii Dziupin
parent
775da6e9f4
commit
57819dd164
@@ -0,0 +1,27 @@
|
||||
import { describe, expect, test } from 'bun:test';
|
||||
|
||||
import {
|
||||
buildDeferredRestartResponse,
|
||||
buildExternalManualRestartResponse,
|
||||
} from './config-mutation-response.js';
|
||||
|
||||
describe('config mutation response helpers', () => {
|
||||
test('buildDeferredRestartResponse marks restart as deferred', () => {
|
||||
expect(buildDeferredRestartResponse('Saved. Restart OpenCode to apply.')).toEqual({
|
||||
success: true,
|
||||
requiresReload: false,
|
||||
requiresRestart: true,
|
||||
restartDeferred: true,
|
||||
message: 'Saved. Restart OpenCode to apply.',
|
||||
});
|
||||
});
|
||||
|
||||
test('buildExternalManualRestartResponse asks for external restart', () => {
|
||||
expect(buildExternalManualRestartResponse('Restart your server.')).toEqual({
|
||||
success: true,
|
||||
requiresReload: false,
|
||||
requiresManualRestart: true,
|
||||
message: 'Restart your server.',
|
||||
});
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user