import { describe, expect, it } from 'vitest';
import { formatDocumentOption, type DocumentOption } from './documentTypeahead';

describe('formatDocumentOption', () => {
	it('returns the bare title when no documentDate is present', () => {
		const doc: DocumentOption = { id: 'd1', title: 'Brief ohne Datum' };
		expect(formatDocumentOption(doc)).toBe('Brief ohne Datum');
	});

	// #781: a TimelineEvent's DocumentRef carries documentDate but no precision.
	// Missing precision must degrade to the full date (DAY), never the UNKNOWN label.
	it('renders the full date when precision is absent (DocumentRef chip)', () => {
		const doc: DocumentOption = { id: 'd1', title: 'Umzugsbrief', documentDate: '1925-04-01' };
		const label = formatDocumentOption(doc);
		expect(label.startsWith('Umzugsbrief · ')).toBe(true);
		expect(label).toContain('1925');
		// The undefined-precision fallback would otherwise surface the UNKNOWN word.
		expect(label.toLowerCase()).not.toContain('unbekannt');
	});
});
