Compare commits
9 Commits
011c07b753
...
3a6b10e860
| Author | SHA1 | Date | |
|---|---|---|---|
| 3a6b10e860 | |||
| 0c05cf6661 | |||
| f4e1917357 | |||
| 6f5176fcb9 | |||
| 67b027e33f | |||
| 961ed39615 | |||
| 90745e02d5 | |||
| df24fcf7e8 | |||
| 02e05930f1 |
@@ -4,7 +4,6 @@ import type { PageServerLoad } from '../../(token-based)/view/$types';
|
||||
export const load: PageServerLoad = async () => {
|
||||
const vorgangList = getVorgaenge();
|
||||
|
||||
|
||||
return {
|
||||
vorgangList
|
||||
};
|
||||
|
||||
@@ -27,7 +27,6 @@
|
||||
}
|
||||
|
||||
let crimesList = $state<ListItem[]>(data.crimesList);
|
||||
$inspect('debug Edit', crimesList);
|
||||
let vorgangName: string = data.vorgang.vorgangName;
|
||||
const vorgangPIN: string = data.vorgang.vorgangPIN;
|
||||
let vorgangToken: string = data.vorgang.vorgangToken;
|
||||
@@ -38,14 +37,12 @@
|
||||
let inProgress = $state(false);
|
||||
let isError = $state(false);
|
||||
|
||||
let admin = $state(data?.user?.admin);
|
||||
let admin = data?.user?.admin;
|
||||
|
||||
async function handleSave(newName: string, oldName: string) {
|
||||
open = true;
|
||||
inProgress = true;
|
||||
isError = false;
|
||||
console.log('debug handleSave', newName, oldName);
|
||||
|
||||
try {
|
||||
const res = await fetch(`/api/list/${vorgangToken}/${oldName}`, {
|
||||
method: 'PUT',
|
||||
|
||||
@@ -25,7 +25,7 @@ describe('API-Endpoints: list', () => {
|
||||
expect(response.status).toBe(401);
|
||||
|
||||
const json = await response.json();
|
||||
const errorObj = { error: 'Unauthorized' }
|
||||
const errorObj = { error: 'Unauthorized' };
|
||||
expect(json).toEqual(errorObj);
|
||||
});
|
||||
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
import { render, screen, within } from '@testing-library/svelte';
|
||||
import { describe, expect, it, test } from "vitest";
|
||||
import TatortListPage from "../src/routes/(token-based)/list/[vorgang]/+page.svelte";
|
||||
import { describe, expect, it, test } from 'vitest';
|
||||
import TatortListPage from '../src/routes/(token-based)/list/[vorgang]/+page.svelte';
|
||||
import { baseData } from './fixtures';
|
||||
|
||||
describe('Seite: Vorgangsansicht', () => {
|
||||
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)', () => {
|
||||
it('zeigt Hinweistext bei leerer Liste', () => {
|
||||
const testData = { ...baseData, crimesList: [] };
|
||||
const { getByTestId } = render(TatortListPage, {props:{data: testData}});
|
||||
const { getByTestId } = render(TatortListPage, { props: { data: testData } });
|
||||
|
||||
expect(getByTestId('empty-list')).toBeInTheDocument();
|
||||
});
|
||||
@@ -25,7 +25,7 @@ describe('Seite: Vorgangsansicht', () => {
|
||||
describe('Szenario: Liste gefüllt (unabhängig von Rolle)', () => {
|
||||
it('rendert mindestens ein Listenelement bei vorhandenen crimesList-Daten', () => {
|
||||
const testData = { ...baseData };
|
||||
const { queryAllByTestId } = render(TatortListPage, {props:{data: testData}});
|
||||
const { queryAllByTestId } = render(TatortListPage, { props: { data: testData } });
|
||||
const items = queryAllByTestId('test-list-item');
|
||||
|
||||
expect(items.length).toBeGreaterThan(0);
|
||||
@@ -54,25 +54,24 @@ describe('Seite: Vorgangsansicht', () => {
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
test.todo('testet zuletzt angezeigt, wenn item.lastModified');
|
||||
test.todo('zeigt Dateigröße, wenn item.size vorhanden ist');
|
||||
});
|
||||
|
||||
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', () => {
|
||||
const { getAllByTestId } = render(TatortListPage, {props:{data: testData}});
|
||||
const { getAllByTestId } = render(TatortListPage, { props: { data: testData } });
|
||||
const items = getAllByTestId('test-nameItemEditor');
|
||||
|
||||
expect(items.length).toBeGreaterThan(0);
|
||||
});
|
||||
|
||||
test.todo('Modal testen, wenn open')
|
||||
test.todo('Modal testen, wenn open');
|
||||
});
|
||||
|
||||
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', () => {
|
||||
render(TatortListPage, { props: { data: testData } });
|
||||
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');
|
||||
});
|
||||
});
|
||||
|
||||
@@ -10,7 +10,7 @@ export default defineConfig({
|
||||
extends: './vite.config.ts',
|
||||
plugins: [svelteTesting()],
|
||||
test: {
|
||||
name: 'client-logic',
|
||||
name: 'business-logic and API',
|
||||
environment: 'jsdom',
|
||||
clearMocks: true,
|
||||
include: ['tests/**/*.{test,spec}.{js,ts}', 'src/**/*.svelte.{test,spec}.{js,ts}'],
|
||||
|
||||
Reference in New Issue
Block a user