- |
+ |
{personNames[model.personId] ?? model.personId}
@@ -58,10 +58,10 @@ let {
|
{model.correctedLinesAtTraining}
|
-
+ |
{m.ocr_table_details()}
|
diff --git a/frontend/src/routes/admin/ocr/[personId]/+page.server.ts b/frontend/src/routes/admin/ocr/[personId]/+page.server.ts
index 70b1fc47..a95076c5 100644
--- a/frontend/src/routes/admin/ocr/[personId]/+page.server.ts
+++ b/frontend/src/routes/admin/ocr/[personId]/+page.server.ts
@@ -14,5 +14,5 @@ export const load: PageServerLoad = async ({ params, fetch }) => {
throw error(result.response.status, getErrorMessage(code));
}
- return { history: result.data! };
+ return { history: result.data!, personId: params.personId };
};
diff --git a/frontend/src/routes/admin/ocr/[personId]/+page.svelte b/frontend/src/routes/admin/ocr/[personId]/+page.svelte
index d7302d52..8392c841 100644
--- a/frontend/src/routes/admin/ocr/[personId]/+page.svelte
+++ b/frontend/src/routes/admin/ocr/[personId]/+page.svelte
@@ -3,8 +3,8 @@ import type { PageData } from './$types';
import TrainingHistory from '$lib/components/TrainingHistory.svelte';
import * as m from '$lib/paraglide/messages.js';
-let { data, params }: { data: PageData; params: { personId: string } } = $props();
-const personName = $derived(data.history.personNames?.[params.personId] ?? 'Unknown');
+let { data }: { data: PageData } = $props();
+const personName = $derived(data.history.personNames?.[data.personId] ?? 'Unknown');
diff --git a/frontend/src/routes/admin/ocr/[personId]/page.svelte.spec.ts b/frontend/src/routes/admin/ocr/[personId]/page.svelte.spec.ts
new file mode 100644
index 00000000..d06445db
--- /dev/null
+++ b/frontend/src/routes/admin/ocr/[personId]/page.svelte.spec.ts
@@ -0,0 +1,36 @@
+import { afterEach, describe, it, expect } from 'vitest';
+import { cleanup, render } from 'vitest-browser-svelte';
+import { page } from 'vitest/browser';
+import Page from './+page.svelte';
+
+afterEach(cleanup);
+
+describe('[personId] page', () => {
+ it('shows person name from personNames map', async () => {
+ const personId = '123e4567-e89b-12d3-a456-426614174000';
+ render(Page, {
+ data: {
+ personId,
+ history: {
+ runs: [],
+ personNames: { [personId]: 'Anna Müller' }
+ }
+ }
+ });
+ await expect.element(page.getByRole('heading', { level: 1 })).toHaveTextContent('Anna Müller');
+ });
+
+ it('falls back to Unknown when person name is missing', async () => {
+ const personId = '123e4567-e89b-12d3-a456-426614174000';
+ render(Page, {
+ data: {
+ personId,
+ history: {
+ runs: [],
+ personNames: {}
+ }
+ }
+ });
+ await expect.element(page.getByRole('heading', { level: 1 })).toHaveTextContent('Unknown');
+ });
+});