diff --git a/frontend/tests/controllers/student-controller.test.ts b/frontend/tests/controllers/student-controller.test.ts index abd5985f..578c832e 100644 --- a/frontend/tests/controllers/student-controller.test.ts +++ b/frontend/tests/controllers/student-controller.test.ts @@ -1,8 +1,19 @@ import { StudentController } from "../../src/controllers/students"; -import { expect, it } from "vitest"; +import { expect, it, describe, afterAll, beforeAll } from 'vitest'; +import { setup, teardown } from '../setup-backend.js'; -it("Get students", async () => { - const controller = new StudentController(); - const data = await controller.getAll(true); - expect(data.students).to.have.length.greaterThan(0); +describe('Test controller students', () => { + beforeAll(async () => { + await setup(); + }); + + afterAll(async () => { + await teardown(); + }); + + it("Get students", async () => { + const controller = new StudentController(); + const data = await controller.getAll(true); + expect(data.students).to.have.length.greaterThan(0); + }); }); diff --git a/frontend/vitest.config.ts b/frontend/vitest.config.ts index 2269cd64..51fc91ab 100644 --- a/frontend/vitest.config.ts +++ b/frontend/vitest.config.ts @@ -9,8 +9,13 @@ export default mergeConfig( environment: "jsdom", exclude: [...configDefaults.exclude, "e2e/**"], root: fileURLToPath(new URL("./", import.meta.url)), - // Startup the backend server, because it is needed for some tests - globalSetup: ["./tests/setup-backend.ts"], + + /* + * The test-backend server can be started for each test-file individually using `beforeAll(() => setup())`, + * or for all tests once using: + globalSetup: ["./tests/setup-backend.ts"], + * In this project, the backend server is started for each test-file individually. + */ }, }), );