Merge branch 'development' into f086_Zusatz-Edit-der-Namen

This commit is contained in:
2025-09-24 12:35:53 +02:00
4 changed files with 24 additions and 27 deletions

View File

@@ -4,7 +4,6 @@ import type { PageServerLoad } from '../../(token-based)/view/$types';
export const load: PageServerLoad = async () => { export const load: PageServerLoad = async () => {
const vorgangList = getVorgaenge(); const vorgangList = getVorgaenge();
return { return {
vorgangList vorgangList
}; };

View File

@@ -25,7 +25,7 @@ describe('API-Endpoints: list', () => {
expect(response.status).toBe(401); expect(response.status).toBe(401);
const json = await response.json(); const json = await response.json();
const errorObj = { error: 'Unauthorized' } const errorObj = { error: 'Unauthorized' };
expect(json).toEqual(errorObj); expect(json).toEqual(errorObj);
}); });

View File

@@ -1,16 +1,16 @@
import { render, screen, within } from '@testing-library/svelte'; import { render, screen, within } from '@testing-library/svelte';
import { describe, expect, it, test } from "vitest"; import { describe, expect, it, test } from 'vitest';
import TatortListPage from "../src/routes/(token-based)/list/[vorgang]/+page.svelte"; import TatortListPage from '../src/routes/(token-based)/list/[vorgang]/+page.svelte';
import { baseData } from './fixtures'; import { baseData } from './fixtures';
describe('Seite: Vorgangsansicht', () => { describe('Seite: Vorgangsansicht', () => {
test.todo('zeigt PIN und Share-Link, wenn Admin'); test.todo('zeigt PIN und Share-Link, wenn Admin');
test.todo('zeigt PIN und Share-Link disabeld, wenn Liste leer') test.todo('zeigt PIN und Share-Link disabeld, wenn Liste leer');
describe('Szenario: Liste leer (unabhängig von Rolle)', () => { describe('Szenario: Liste leer (unabhängig von Rolle)', () => {
it('zeigt Hinweistext bei leerer Liste', () => { it('zeigt Hinweistext bei leerer Liste', () => {
const testData = { ...baseData, crimesList: [] }; const testData = { ...baseData, crimesList: [] };
const { getByTestId } = render(TatortListPage, {props:{data: testData}}); const { getByTestId } = render(TatortListPage, { props: { data: testData } });
expect(getByTestId('empty-list')).toBeInTheDocument(); expect(getByTestId('empty-list')).toBeInTheDocument();
}); });
@@ -25,7 +25,7 @@ describe('Seite: Vorgangsansicht', () => {
describe('Szenario: Liste gefüllt (unabhängig von Rolle)', () => { describe('Szenario: Liste gefüllt (unabhängig von Rolle)', () => {
it('rendert mindestens ein Listenelement bei vorhandenen crimesList-Daten', () => { it('rendert mindestens ein Listenelement bei vorhandenen crimesList-Daten', () => {
const testData = { ...baseData }; const testData = { ...baseData };
const { queryAllByTestId } = render(TatortListPage, {props:{data: testData}}); const { queryAllByTestId } = render(TatortListPage, { props: { data: testData } });
const items = queryAllByTestId('test-list-item'); const items = queryAllByTestId('test-list-item');
expect(items.length).toBeGreaterThan(0); expect(items.length).toBeGreaterThan(0);
@@ -54,25 +54,24 @@ describe('Seite: Vorgangsansicht', () => {
}); });
}); });
test.todo('testet zuletzt angezeigt, wenn item.lastModified'); test.todo('testet zuletzt angezeigt, wenn item.lastModified');
test.todo('zeigt Dateigröße, wenn item.size vorhanden ist'); test.todo('zeigt Dateigröße, wenn item.size vorhanden ist');
}); });
describe('Szenario: Admin + Liste gefüllt', () => { describe('Szenario: Admin + Liste gefüllt', () => {
const testData = { ...baseData, user: { ...baseData.user, admin: true }}; const testData = { ...baseData, user: { ...baseData.user, admin: true } };
it('zeigt Listeneinträge mit Komponente NameItemEditor', () => { it('zeigt Listeneinträge mit Komponente NameItemEditor', () => {
const { getAllByTestId } = render(TatortListPage, {props:{data: testData}}); const { getAllByTestId } = render(TatortListPage, { props: { data: testData } });
const items = getAllByTestId('test-nameItemEditor'); const items = getAllByTestId('test-nameItemEditor');
expect(items.length).toBeGreaterThan(0); expect(items.length).toBeGreaterThan(0);
}); });
test.todo('Modal testen, wenn open') test.todo('Modal testen, wenn open');
}); });
describe('Szenario: Viewer + Liste gefüllt', () => { describe('Szenario: Viewer + Liste gefüllt', () => {
const testData = { ...baseData, user: { ...baseData.user, admin: false }}; const testData = { ...baseData, user: { ...baseData.user, admin: false } };
it('zeigt Listeneinträge mit p', () => { it('zeigt Listeneinträge mit p', () => {
render(TatortListPage, { props: { data: testData } }); render(TatortListPage, { props: { data: testData } });
const paragraphs = screen.queryAllByTestId('test-nameItem-p'); const paragraphs = screen.queryAllByTestId('test-nameItem-p');
@@ -83,7 +82,6 @@ describe('Seite: Vorgangsansicht', () => {
}); });
}); });
test.todo('zeigt keinen Share-Link oder PIN') test.todo('zeigt keinen Share-Link oder PIN');
}); });
}); });

View File

@@ -10,7 +10,7 @@ export default defineConfig({
extends: './vite.config.ts', extends: './vite.config.ts',
plugins: [svelteTesting()], plugins: [svelteTesting()],
test: { test: {
name: 'client-logic', name: 'business-logic and API',
environment: 'jsdom', environment: 'jsdom',
clearMocks: true, clearMocks: true,
include: ['tests/**/*.{test,spec}.{js,ts}', 'src/**/*.svelte.{test,spec}.{js,ts}'], include: ['tests/**/*.{test,spec}.{js,ts}', 'src/**/*.svelte.{test,spec}.{js,ts}'],