From ca88a541c84b5dd2223bc93dd930671ab0c20378 Mon Sep 17 00:00:00 2001 From: Chi Cong Tran Date: Fri, 26 Sep 2025 08:32:42 +0200 Subject: [PATCH] refactoring: magic strings and tests for Vorgang overview page --- src/routes/(angemeldet)/list/+page.svelte | 3 ++- tests/VorgangList.view.test.ts | 17 ++++++++++++++++- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/src/routes/(angemeldet)/list/+page.svelte b/src/routes/(angemeldet)/list/+page.svelte index 713323e..96f81c2 100644 --- a/src/routes/(angemeldet)/list/+page.svelte +++ b/src/routes/(angemeldet)/list/+page.svelte @@ -2,6 +2,7 @@ import Trash from '$lib/icons/Trash.svelte'; import Folder from '$lib/icons/Folder.svelte'; import EmptyList from '$lib/components/EmptyList.svelte'; + import { ROUTE_NAMES } from '../../index.js'; let { data } = $props(); @@ -49,7 +50,7 @@ {#each vorgangList as vorgangItem}
  • diff --git a/tests/VorgangList.view.test.ts b/tests/VorgangList.view.test.ts index 41a8be1..cf23083 100644 --- a/tests/VorgangList.view.test.ts +++ b/tests/VorgangList.view.test.ts @@ -1,7 +1,8 @@ -import { render } from '@testing-library/svelte'; +import { render, screen, within } from '@testing-library/svelte'; import { describe, expect, it } from 'vitest'; import VorgangListPage from '../src/routes/(angemeldet)/list/+page.svelte'; import { baseData } from './fixtures'; +import { ROUTE_NAMES } from '../src/routes'; describe('Vorgänge Liste Page EmptyList-Komponente View', () => { it('zeigt EmptyList-Komponente an, wenn Liste leer ist', () => { @@ -19,3 +20,17 @@ describe('Vorgänge Liste Page EmptyList-Komponente View', () => { expect(items.length).toBeGreaterThan(0); }); }); + +describe('Teste Links auf Korrektheit', () => { + it('Überprüfe Links', () => { + const vorgListOneItem = baseData.vorgangList.slice(0, 1); + const vorgObj = vorgListOneItem[0]; + const expectedURL = ROUTE_NAMES.VORGANG(vorgObj.vorgangToken, vorgObj.vorgangPIN) + + render(VorgangListPage, { props: { data: { ...baseData, vorgangList: vorgListOneItem } } }); + const listItem = screen.getByTestId("test-list-item"); + const linkElement = within(listItem).getByRole('link'); + expect(linkElement).toBeInTheDocument(); + expect(linkElement).toHaveAttribute('href', expectedURL); + }); +});