diff --git a/frontend/src/lib/components/DashboardResumeStrip.svelte b/frontend/src/lib/components/DashboardResumeStrip.svelte index 76eade81..fcf16812 100644 --- a/frontend/src/lib/components/DashboardResumeStrip.svelte +++ b/frontend/src/lib/components/DashboardResumeStrip.svelte @@ -44,27 +44,20 @@ function safeColor(color: string): string { {:else}
diff --git a/frontend/src/lib/components/DashboardResumeStrip.svelte.spec.ts b/frontend/src/lib/components/DashboardResumeStrip.svelte.spec.ts index 2250ff2e..a7b411c0 100644 --- a/frontend/src/lib/components/DashboardResumeStrip.svelte.spec.ts +++ b/frontend/src/lib/components/DashboardResumeStrip.svelte.spec.ts @@ -21,6 +21,11 @@ const mockResume: DashboardResumeDTO = { collaborators: [] }; +const mockResumeWithThumbnail: DashboardResumeDTO = { + ...mockResume, + thumbnailUrl: '/api/documents/doc-123/thumbnail?v=2026-04-23T09%3A00' +}; + describe('DashboardResumeStrip', () => { it('renders empty state heading when resumeDoc is null', async () => { render(DashboardResumeStrip, { resumeDoc: null }); @@ -52,4 +57,16 @@ describe('DashboardResumeStrip', () => { const label = page.getByText(/4 Abschnitte/i); await expect.element(label).toBeInTheDocument(); }); + + it('renders thumbnail img with expected attrs when thumbnailUrl is set', async () => { + render(DashboardResumeStrip, { resumeDoc: mockResumeWithThumbnail }); + const img = page.getByTestId('resume-thumbnail-img'); + await expect.element(img).toBeInTheDocument(); + await expect + .element(img) + .toHaveAttribute('src', '/api/documents/doc-123/thumbnail?v=2026-04-23T09%3A00'); + await expect.element(img).toHaveAttribute('alt', ''); + await expect.element(img).toHaveAttribute('loading', 'lazy'); + await expect.element(img).toHaveAttribute('decoding', 'async'); + }); });