diff --git a/frontend/src/routes/conversations/page.svelte.spec.ts b/frontend/src/routes/conversations/page.svelte.spec.ts index c7cb41fc..2e935a3b 100644 --- a/frontend/src/routes/conversations/page.svelte.spec.ts +++ b/frontend/src/routes/conversations/page.svelte.spec.ts @@ -10,6 +10,7 @@ afterEach(cleanup); // ─── Test data ──────────────────────────────────────────────────────────────── const baseData = { + user: undefined, canWrite: true, documents: [], initialValues: { senderName: '', receiverName: '' }, @@ -31,8 +32,8 @@ const makeDoc = (overrides: Record = {}) => ({ sender: { id: 'p1', firstName: 'Hans', lastName: 'Müller' }, receivers: [{ id: 'p2', firstName: 'Anna', lastName: 'Schmidt' }], tags: [], - transcription: null, - filePath: null, + transcription: undefined, + filePath: undefined, createdAt: '1923-04-12T00:00:00Z', updatedAt: '1923-04-12T00:00:00Z', ...overrides diff --git a/frontend/src/routes/documents/new/page.svelte.spec.ts b/frontend/src/routes/documents/new/page.svelte.spec.ts index 7968fe30..0a269279 100644 --- a/frontend/src/routes/documents/new/page.svelte.spec.ts +++ b/frontend/src/routes/documents/new/page.svelte.spec.ts @@ -8,6 +8,8 @@ afterEach(cleanup); // ─── Test data ──────────────────────────────────────────────────────────────── const baseData = { + user: undefined, + canWrite: true, persons: [], initialSenderId: '', initialSenderName: '', @@ -18,14 +20,15 @@ const baseData = { describe('New document page – sender prefill', () => { it('shows an empty sender input when no senderId is in the URL', async () => { - render(Page, { data: baseData }); + render(Page, { data: baseData, form: null }); const input = document.querySelector('#senderId-search'); expect(input?.value).toBe(''); }); it('shows the sender name in the typeahead input when initialSenderName is set', async () => { render(Page, { - data: { ...baseData, initialSenderId: 'p1', initialSenderName: 'Hans Müller' } + data: { ...baseData, initialSenderId: 'p1', initialSenderName: 'Hans Müller' }, + form: null }); const input = document.querySelector('#senderId-search'); expect(input?.value).toBe('Hans Müller'); @@ -33,7 +36,8 @@ describe('New document page – sender prefill', () => { it('sets the hidden senderId input to the prefilled ID', async () => { render(Page, { - data: { ...baseData, initialSenderId: 'p1', initialSenderName: 'Hans Müller' } + data: { ...baseData, initialSenderId: 'p1', initialSenderName: 'Hans Müller' }, + form: null }); const hidden = document.querySelector( 'input[type="hidden"][name="senderId"]' @@ -46,7 +50,7 @@ describe('New document page – sender prefill', () => { describe('New document page – receiver prefill', () => { it('shows no receiver chips when initialReceivers is empty', async () => { - render(Page, { data: baseData }); + render(Page, { data: baseData, form: null }); await expect.element(page.getByText('Anna Schmidt')).not.toBeInTheDocument(); }); @@ -55,7 +59,7 @@ describe('New document page – receiver prefill', () => { ...baseData, initialReceivers: [{ id: 'p2', firstName: 'Anna', lastName: 'Schmidt' }] }; - render(Page, { data }); + render(Page, { data, form: null }); await expect.element(page.getByText('Anna Schmidt')).toBeInTheDocument(); }); @@ -64,7 +68,7 @@ describe('New document page – receiver prefill', () => { ...baseData, initialReceivers: [{ id: 'p2', firstName: 'Anna', lastName: 'Schmidt' }] }; - render(Page, { data }); + render(Page, { data, form: null }); const hidden = document.querySelector('input[name="receiverIds"]'); expect(hidden?.value).toBe('p2'); }); diff --git a/frontend/src/routes/persons/[id]/+page.server.ts b/frontend/src/routes/persons/[id]/+page.server.ts index 4a9bbcc9..0bb0ca2a 100644 --- a/frontend/src/routes/persons/[id]/+page.server.ts +++ b/frontend/src/routes/persons/[id]/+page.server.ts @@ -31,8 +31,10 @@ export const actions = { const lastName = formData.get('lastName')?.toString().trim(); const alias = formData.get('alias')?.toString().trim() || undefined; const notes = formData.get('notes')?.toString().trim() || undefined; - const birthYear = formData.get('birthYear')?.toString().trim() || undefined; - const deathYear = formData.get('deathYear')?.toString().trim() || undefined; + const birthYearStr = formData.get('birthYear')?.toString().trim(); + const deathYearStr = formData.get('deathYear')?.toString().trim(); + const birthYear = birthYearStr ? parseInt(birthYearStr, 10) : undefined; + const deathYear = deathYearStr ? parseInt(deathYearStr, 10) : undefined; if (!firstName || !lastName) { return fail(400, { updateError: 'Vor- und Nachname sind Pflichtfelder.' });