import { describe, expect, it } from 'vitest' import { candidateFromItem, serializeIdeReference } from '../src/client.js' const item = { path: 'F:\\project\\a&b.ts', label: 'a&b.ts', dirty: true, ide: 'vscode' as const, instanceId: 'one', workspace: 'F:\\project', instanceOpenCount: 4, } describe('client reference projection', () => { it('keeps the path in a structured JSON payload', () => { expect(serializeIdeReference(item.path)).toBe('{"path":"F:\\\\project\\\\a&b.ts"}') }) it('shows IDE, count and dirty state', () => { const candidate = candidateFromItem(item) expect(candidate.description).toContain('VS Code') expect(candidate.description).toContain('4 open') expect(candidate.description).toContain('unsaved changes') }) })