cc-haha/desktop/src/lib/sessionWorkspace.test.ts
程序员阿江(Relakkes) 53a15098c0 perf(desktop): add SQLite-backed local data index #1016
Project sessions, activity, scheduled runs, traces, and searchable content into rebuildable managed databases while preserving canonical-file fallbacks. Add diagnostics, recovery, parity coverage, and performance acceptance checks.
2026-07-16 04:16:02 +08:00

28 lines
926 B
TypeScript

import { describe, expect, it } from 'vitest'
import { getSessionBrowsablePath, getSessionWorkspaceState } from './sessionWorkspace'
describe('session workspace state', () => {
it('keeps legacy missing sessions classified as missing', () => {
const session = {
workDir: '/repo/deleted',
projectRoot: '/repo/deleted',
workDirExists: false,
}
expect(getSessionWorkspaceState(session)).toBe('missing')
expect(getSessionBrowsablePath(session)).toBeUndefined()
})
it('uses the original project as a safe browse target for cleaned worktrees', () => {
const session = {
workDir: '/repo/.claude/worktrees/desktop-main-12345678',
projectRoot: '/repo',
workDirExists: false,
workspaceState: 'worktree_removed' as const,
}
expect(getSessionWorkspaceState(session)).toBe('worktree_removed')
expect(getSessionBrowsablePath(session)).toBe('/repo')
})
})