From f18ef0711647a4836b58e9c53ae1b34c633323c6 Mon Sep 17 00:00:00 2001 From: Chi Cong Tran Date: Wed, 3 Sep 2025 10:16:18 +0200 Subject: [PATCH] add tests for API endpoint: vorgang/[vorgang]/vorgangPIN --- tests/APIVorgangVorgangVorgangPIN.test.ts | 43 +++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 tests/APIVorgangVorgangVorgangPIN.test.ts diff --git a/tests/APIVorgangVorgangVorgangPIN.test.ts b/tests/APIVorgangVorgangVorgangPIN.test.ts new file mode 100644 index 0000000..6357f3a --- /dev/null +++ b/tests/APIVorgangVorgangVorgangPIN.test.ts @@ -0,0 +1,43 @@ +import { describe, test, expect, vi } from 'vitest'; +import { GET } from '../src/routes/api/vorgang/[vorgang]/vorgangPIN/+server'; +import { db } from '$lib/server/dbService'; + +const mockEvent = { + params: { vorgang: '123' } +}; + +vi.mock('$lib/server/dbService', () => ({ + db: { + prepare: vi.fn() + } +})); + +describe('API-Endpoint: Vorgang-PIN', () => { + test('Vorgang PIN: Erfolgreich', async () => { + // only interested in PIN value + const mockPIN = 'pin-123'; + const mockRow = { pin: mockPIN }; + + const getMock = vi.fn().mockReturnValue(mockRow); + + db.prepare.mockReturnValue({ get: getMock }); + const response = await GET(mockEvent); + expect(response.status).toBe(200); + + const body = await response.text(); + expect(body).toEqual(mockPIN); + }); + + test('Vorgang PIN: Nicht erfolgreich', async () => { + const mockRow = {}; + + const getMock = vi.fn().mockReturnValue(mockRow); + + db.prepare.mockReturnValue({ get: getMock }); + const response = await GET(mockEvent); + expect(response.status).toBe(404); + + const body = await response.text(); + expect(body).toEqual(''); + }); +});