Files
DeskClaw/tests/unit/main-quit-lifecycle.test.ts
2026-03-20 18:34:20 +08:00

24 lines
765 B
TypeScript

import { describe, expect, it } from 'vitest';
import {
createQuitLifecycleState,
markQuitCleanupCompleted,
requestQuitLifecycleAction,
} from '@electron/main/quit-lifecycle';
describe('main quit lifecycle coordination', () => {
it('starts cleanup only once', () => {
const state = createQuitLifecycleState();
expect(requestQuitLifecycleAction(state)).toBe('start-cleanup');
expect(requestQuitLifecycleAction(state)).toBe('cleanup-in-progress');
});
it('allows quit after cleanup is marked complete', () => {
const state = createQuitLifecycleState();
expect(requestQuitLifecycleAction(state)).toBe('start-cleanup');
markQuitCleanupCompleted(state);
expect(requestQuitLifecycleAction(state)).toBe('allow-quit');
});
});