diff --git a/web/dms-browser/app/audit-log/page.test.tsx b/web/dms-browser/app/audit-log/page.test.tsx index 1eb88fe4..34934781 100644 --- a/web/dms-browser/app/audit-log/page.test.tsx +++ b/web/dms-browser/app/audit-log/page.test.tsx @@ -34,22 +34,20 @@ it("sendet Akteur- und Aktion-Filter bei der Suche", async () => { // Akzeptanzkriterium 2: Export enthaelt dieselben Filter wie die aktuell // eingegebene Suche. -it("der Export uebernimmt die aktuell eingegebenen Filter", () => { - vi.stubGlobal("fetch", vi.fn()); - const originalLocation = window.location; - // @ts-expect-error - jsdom-location fuer den Test ersetzen - delete window.location; - window.location = { href: "" } as unknown as Location; +it("der Export uebernimmt die aktuell eingegebenen Filter", async () => { + // UX-10: kein Link mehr, sondern ein Abruf per fetch (im Token-Modus mit Bearer-Header). + const fetchMock = vi.fn().mockResolvedValue(new Response("csv", { status: 200 })); + vi.stubGlobal("fetch", fetchMock); + vi.stubGlobal("URL", Object.assign(URL, { createObjectURL: vi.fn(() => "blob:x"), revokeObjectURL: vi.fn() })); render(); fireEvent.change(screen.getByLabelText("Akteur"), { target: { value: "user-a" } }); fireEvent.click(screen.getByRole("button", { name: "Als CSV exportieren" })); - const url = new URL(window.location.href); + await waitFor(() => expect(fetchMock).toHaveBeenCalled()); + const url = new URL(String(fetchMock.mock.calls[0][0])); expect(url.searchParams.get("actor")).toBe("user-a"); expect(url.pathname).toBe("/audit-log/export"); - - window.location = originalLocation; }); // Akzeptanzkriterium 3: fehlende Berechtigung zeigt eine klare Meldung. diff --git a/web/dms-browser/lib/diffApi.test.ts b/web/dms-browser/lib/diffApi.test.ts index 354b3208..688aacdf 100644 --- a/web/dms-browser/lib/diffApi.test.ts +++ b/web/dms-browser/lib/diffApi.test.ts @@ -18,7 +18,7 @@ describe("diffApi", () => { vi.stubGlobal("fetch", fetchMock); await fetchDiff("doc-1", "rev-a", "rev-b"); expect(fetchMock.mock.calls[0][0]).toBe( - "http://backend.test/documents/doc-1/diff?caller=user-a&from=rev-a&to=rev-b" + "http://backend.test/documents/doc-1/diff?from=rev-a&to=rev-b&caller=user-a" ); });