fix(test): update import-status test mocks and imports for statusCode-based i18n
Some checks failed
CI / Unit & Component Tests (pull_request) Failing after 4m6s
CI / OCR Service Tests (pull_request) Successful in 17s
CI / Backend Unit Tests (pull_request) Successful in 4m23s
CI / fail2ban Regex (pull_request) Successful in 38s
CI / Compose Bucket Idempotency (pull_request) Successful in 57s
Some checks failed
CI / Unit & Component Tests (pull_request) Failing after 4m6s
CI / OCR Service Tests (pull_request) Successful in 17s
CI / Backend Unit Tests (pull_request) Successful in 4m23s
CI / fail2ban Regex (pull_request) Successful in 38s
CI / Compose Bucket Idempotency (pull_request) Successful in 57s
Three test files were written against the old API shape (raw `message` field) before the statusCode i18n field was introduced, or used the wrong `expect` import path: - ImportStatusCard.svelte.test.ts: `@vitest/browser/context` does not export `expect` in this project's Vitest setup — use `vitest` like every other test file. - page.svelte.spec.ts: FAILED mock lacked `statusCode`; assertion matched old German raw message instead of the i18n string for IMPORT_FAILED_NO_SPREADSHEET. - page.svelte.test.ts: same pattern — mock lacked `statusCode`; assertion checked for raw backend string "database error" instead of the rendered i18n text. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
import { describe, it, vi } from 'vitest';
|
||||
import { describe, expect, it, vi } from 'vitest';
|
||||
import { render } from 'vitest-browser-svelte';
|
||||
import { expect } from '@vitest/browser/context';
|
||||
import ImportStatusCard from './ImportStatusCard.svelte';
|
||||
|
||||
type ImportStatus = {
|
||||
|
||||
@@ -163,7 +163,7 @@ describe('Admin system page — mass import card', () => {
|
||||
ok: true,
|
||||
json: async () => ({
|
||||
state: 'FAILED',
|
||||
message: 'Datei nicht gefunden.',
|
||||
statusCode: 'IMPORT_FAILED_NO_SPREADSHEET',
|
||||
processed: 0,
|
||||
startedAt: '2026-01-01T10:00:00'
|
||||
})
|
||||
@@ -182,7 +182,7 @@ describe('Admin system page — mass import card', () => {
|
||||
})
|
||||
);
|
||||
render(Page, {});
|
||||
await expect.element(page.getByText(/Datei nicht gefunden/i)).toBeInTheDocument();
|
||||
await expect.element(page.getByText(/Keine Tabellendatei gefunden/i)).toBeInTheDocument();
|
||||
await expect.element(page.getByRole('button', { name: /Erneut starten/i })).toBeInTheDocument();
|
||||
});
|
||||
});
|
||||
|
||||
@@ -246,7 +246,7 @@ describe('admin/system page', () => {
|
||||
return new Response(
|
||||
JSON.stringify({
|
||||
state: 'FAILED',
|
||||
message: 'database error',
|
||||
statusCode: 'IMPORT_FAILED_INTERNAL',
|
||||
processed: 0,
|
||||
startedAt: null
|
||||
}),
|
||||
@@ -262,7 +262,7 @@ describe('admin/system page', () => {
|
||||
render(AdminSystemPage, { props: {} });
|
||||
|
||||
await vi.waitFor(() => {
|
||||
expect(document.body.textContent).toContain('database error');
|
||||
expect(document.body.textContent).toContain('Interner Fehler beim Import');
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user