test: student repository is getest

This commit is contained in:
Laure Jablonski 2025-03-07 11:48:52 +01:00
parent 3cd7496989
commit 5502c6c58e
5 changed files with 2520 additions and 393 deletions

View file

@ -1,37 +0,0 @@
import { setupTestApp } from '../setup-tests.js';
import { Student } from '../../src/entities/users/student.entity.js';
import { describe, it, expect, beforeAll } from 'vitest';
import { StudentRepository } from '../../src/data/users/student-repository.js';
import { getStudentRepository } from '../../src/data/repositories.js';
const username = 'teststudent';
const firstName = 'John';
const lastName = 'Doe';
describe('StudentRepository', () => {
let studentRepository: StudentRepository;
beforeAll(async () => {
await setupTestApp();
studentRepository = getStudentRepository();
});
it('should return the queried student after he was added', async () => {
await studentRepository.insert(
new Student(username, firstName, lastName)
);
const retrievedStudent =
await studentRepository.findByUsername(username);
expect(retrievedStudent).toBeTruthy();
expect(retrievedStudent?.firstName).toBe(firstName);
expect(retrievedStudent?.lastName).toBe(lastName);
});
it('should no longer return the queried student after he was removed again', async () => {
await studentRepository.deleteByUsername(username);
const retrievedStudent =
await studentRepository.findByUsername(username);
expect(retrievedStudent).toBeNull();
});
});