Merge remote-tracking branch 'origin/dev' into feat/indieningen-kunnen-posten-en-bekijken-#194
# Conflicts: # backend/tests/setup-tests.ts
This commit is contained in:
commit
dd2cdf3fe9
46 changed files with 1670 additions and 123 deletions
|
@ -2,9 +2,11 @@ import { EntityManager } from '@mikro-orm/core';
|
|||
import { Assignment } from '../../../src/entities/assignments/assignment.entity';
|
||||
import { Class } from '../../../src/entities/classes/class.entity';
|
||||
import { Language } from '@dwengo-1/common/util/language';
|
||||
import {testLearningPathWithConditions} from "../content/learning-paths.testdata";
|
||||
import {getClassWithTestleerlingAndTestleerkracht} from "../classes/classes.testdata";
|
||||
|
||||
export function makeTestAssignemnts(em: EntityManager, classes: Class[]): Assignment[] {
|
||||
const assignment01 = em.create(Assignment, {
|
||||
assignment01 = em.create(Assignment, {
|
||||
within: classes[0],
|
||||
id: 1,
|
||||
title: 'dire straits',
|
||||
|
@ -14,7 +16,7 @@ export function makeTestAssignemnts(em: EntityManager, classes: Class[]): Assign
|
|||
groups: [],
|
||||
});
|
||||
|
||||
const assignment02 = em.create(Assignment, {
|
||||
assignment02 = em.create(Assignment, {
|
||||
within: classes[1],
|
||||
id: 2,
|
||||
title: 'tool',
|
||||
|
@ -24,7 +26,7 @@ export function makeTestAssignemnts(em: EntityManager, classes: Class[]): Assign
|
|||
groups: [],
|
||||
});
|
||||
|
||||
const assignment03 = em.create(Assignment, {
|
||||
assignment03 = em.create(Assignment, {
|
||||
within: classes[0],
|
||||
id: 3,
|
||||
title: 'delete',
|
||||
|
@ -34,7 +36,7 @@ export function makeTestAssignemnts(em: EntityManager, classes: Class[]): Assign
|
|||
groups: [],
|
||||
});
|
||||
|
||||
const assignment04 = em.create(Assignment, {
|
||||
assignment04 = em.create(Assignment, {
|
||||
within: classes[0],
|
||||
id: 4,
|
||||
title: 'another assignment',
|
||||
|
@ -44,5 +46,41 @@ export function makeTestAssignemnts(em: EntityManager, classes: Class[]): Assign
|
|||
groups: [],
|
||||
});
|
||||
|
||||
return [assignment01, assignment02, assignment03, assignment04];
|
||||
conditionalPathAssignment = em.create(Assignment, {
|
||||
within: getClassWithTestleerlingAndTestleerkracht(),
|
||||
id: 1,
|
||||
title: 'Assignment: Conditional Learning Path',
|
||||
description: 'You have to do the testing learning path with a condition.',
|
||||
learningPathHruid: testLearningPathWithConditions.hruid,
|
||||
learningPathLanguage: testLearningPathWithConditions.language as Language,
|
||||
groups: [],
|
||||
});
|
||||
|
||||
return [assignment01, assignment02, assignment03, assignment04, conditionalPathAssignment];
|
||||
}
|
||||
|
||||
let assignment01: Assignment;
|
||||
let assignment02: Assignment;
|
||||
let assignment03: Assignment;
|
||||
let assignment04: Assignment;
|
||||
let conditionalPathAssignment: Assignment;
|
||||
|
||||
export function getAssignment01(): Assignment {
|
||||
return assignment01;
|
||||
}
|
||||
|
||||
export function getAssignment02(): Assignment {
|
||||
return assignment02;
|
||||
}
|
||||
|
||||
export function getAssignment03(): Assignment {
|
||||
return assignment03;
|
||||
}
|
||||
|
||||
export function getAssignment04(): Assignment {
|
||||
return assignment04;
|
||||
}
|
||||
|
||||
export function getConditionalPathAssignment(): Assignment {
|
||||
return conditionalPathAssignment;
|
||||
}
|
||||
|
|
|
@ -2,6 +2,8 @@ import {EntityManager} from '@mikro-orm/core';
|
|||
import { Group } from '../../../src/entities/assignments/group.entity';
|
||||
import { Assignment } from '../../../src/entities/assignments/assignment.entity';
|
||||
import { Student } from '../../../src/entities/users/student.entity';
|
||||
import {getConditionalPathAssignment} from "./assignments.testdata";
|
||||
import {getTestleerling1} from "../users/students.testdata";
|
||||
|
||||
export function makeTestGroups(em: EntityManager, students: Student[], assignments: Assignment[]): Group[] {
|
||||
/*
|
||||
|
@ -54,7 +56,16 @@ export function makeTestGroups(em: EntityManager, students: Student[], assignmen
|
|||
members: students.slice(0, 2),
|
||||
});
|
||||
|
||||
return [group01, group02, group03, group04, group05];
|
||||
/**
|
||||
* Group 1 for the assignment of the testing learning path with conditions.
|
||||
*/
|
||||
group1ConditionalLearningPath = em.create(Group, {
|
||||
assignment: getConditionalPathAssignment(),
|
||||
groupNumber: 1,
|
||||
members: [getTestleerling1()]
|
||||
})
|
||||
|
||||
return [group01, group02, group03, group04, group05, group1ConditionalLearningPath];
|
||||
}
|
||||
|
||||
let group01: Group;
|
||||
|
@ -62,6 +73,7 @@ let group02: Group;
|
|||
let group03: Group;
|
||||
let group04: Group;
|
||||
let group05: Group;
|
||||
let group1ConditionalLearningPath: Group;
|
||||
|
||||
export function getTestGroup01() {
|
||||
return group01;
|
||||
|
@ -83,3 +95,6 @@ export function getTestGroup05() {
|
|||
return group05;
|
||||
}
|
||||
|
||||
export function getGroup1ConditionalLearningPath() {
|
||||
return group1ConditionalLearningPath;
|
||||
}
|
||||
|
|
|
@ -2,31 +2,31 @@ import { EntityManager } from '@mikro-orm/core';
|
|||
import { ClassJoinRequest } from '../../../src/entities/classes/class-join-request.entity';
|
||||
import { Student } from '../../../src/entities/users/student.entity';
|
||||
import { Class } from '../../../src/entities/classes/class.entity';
|
||||
import { ClassJoinRequestStatus } from '@dwengo-1/common/util/class-join-request';
|
||||
import { ClassStatus } from '@dwengo-1/common/util/class-join-request';
|
||||
|
||||
export function makeTestClassJoinRequests(em: EntityManager, students: Student[], classes: Class[]): ClassJoinRequest[] {
|
||||
const classJoinRequest01 = em.create(ClassJoinRequest, {
|
||||
requester: students[4],
|
||||
class: classes[1],
|
||||
status: ClassJoinRequestStatus.Open,
|
||||
status: ClassStatus.Open,
|
||||
});
|
||||
|
||||
const classJoinRequest02 = em.create(ClassJoinRequest, {
|
||||
requester: students[2],
|
||||
class: classes[1],
|
||||
status: ClassJoinRequestStatus.Open,
|
||||
status: ClassStatus.Open,
|
||||
});
|
||||
|
||||
const classJoinRequest03 = em.create(ClassJoinRequest, {
|
||||
requester: students[4],
|
||||
class: classes[2],
|
||||
status: ClassJoinRequestStatus.Open,
|
||||
status: ClassStatus.Open,
|
||||
});
|
||||
|
||||
const classJoinRequest04 = em.create(ClassJoinRequest, {
|
||||
requester: students[3],
|
||||
class: classes[2],
|
||||
status: ClassJoinRequestStatus.Open,
|
||||
status: ClassStatus.Open,
|
||||
});
|
||||
|
||||
return [classJoinRequest01, classJoinRequest02, classJoinRequest03, classJoinRequest04];
|
||||
|
|
|
@ -2,12 +2,14 @@ import { EntityManager } from '@mikro-orm/core';
|
|||
import { Class } from '../../../src/entities/classes/class.entity';
|
||||
import { Student } from '../../../src/entities/users/student.entity';
|
||||
import { Teacher } from '../../../src/entities/users/teacher.entity';
|
||||
import {getTestleerkracht1} from "../users/teachers.testdata";
|
||||
import {getTestleerling1} from "../users/students.testdata";
|
||||
|
||||
export function makeTestClasses(em: EntityManager, students: Student[], teachers: Teacher[]): Class[] {
|
||||
const studentsClass01 = students.slice(0, 8);
|
||||
const teacherClass01: Teacher[] = teachers.slice(4, 5);
|
||||
|
||||
const class01 = em.create(Class, {
|
||||
class01 = em.create(Class, {
|
||||
classId: '8764b861-90a6-42e5-9732-c0d9eb2f55f9',
|
||||
displayName: 'class01',
|
||||
teachers: teacherClass01,
|
||||
|
@ -17,7 +19,7 @@ export function makeTestClasses(em: EntityManager, students: Student[], teachers
|
|||
const studentsClass02: Student[] = students.slice(0, 2).concat(students.slice(3, 4));
|
||||
const teacherClass02: Teacher[] = teachers.slice(1, 2);
|
||||
|
||||
const class02 = em.create(Class, {
|
||||
class02 = em.create(Class, {
|
||||
classId: '34d484a1-295f-4e9f-bfdc-3e7a23d86a89',
|
||||
displayName: 'class02',
|
||||
teachers: teacherClass02,
|
||||
|
@ -27,7 +29,7 @@ export function makeTestClasses(em: EntityManager, students: Student[], teachers
|
|||
const studentsClass03: Student[] = students.slice(1, 4);
|
||||
const teacherClass03: Teacher[] = teachers.slice(2, 3);
|
||||
|
||||
const class03 = em.create(Class, {
|
||||
class03 = em.create(Class, {
|
||||
classId: '80dcc3e0-1811-4091-9361-42c0eee91cfa',
|
||||
displayName: 'class03',
|
||||
teachers: teacherClass03,
|
||||
|
@ -37,12 +39,45 @@ export function makeTestClasses(em: EntityManager, students: Student[], teachers
|
|||
const studentsClass04: Student[] = students.slice(0, 2);
|
||||
const teacherClass04: Teacher[] = teachers.slice(2, 3);
|
||||
|
||||
const class04 = em.create(Class, {
|
||||
class04 = em.create(Class, {
|
||||
classId: '33d03536-83b8-4880-9982-9bbf2f908ddf',
|
||||
displayName: 'class04',
|
||||
teachers: teacherClass04,
|
||||
students: studentsClass04,
|
||||
});
|
||||
|
||||
return [class01, class02, class03, class04];
|
||||
classWithTestleerlingAndTestleerkracht = em.create(Class, {
|
||||
classId: "a75298b5-18aa-471d-8eeb-5d77eb989393",
|
||||
displayName: 'Testklasse',
|
||||
teachers: [getTestleerkracht1()],
|
||||
students: [getTestleerling1()]
|
||||
});
|
||||
|
||||
return [class01, class02, class03, class04, classWithTestleerlingAndTestleerkracht];
|
||||
}
|
||||
|
||||
let class01: Class;
|
||||
let class02: Class;
|
||||
let class03: Class;
|
||||
let class04: Class;
|
||||
let classWithTestleerlingAndTestleerkracht: Class;
|
||||
|
||||
export function getClass01(): Class {
|
||||
return class01;
|
||||
}
|
||||
|
||||
export function getClass02(): Class {
|
||||
return class02;
|
||||
}
|
||||
|
||||
export function getClass03(): Class {
|
||||
return class03;
|
||||
}
|
||||
|
||||
export function getClass04(): Class {
|
||||
return class04;
|
||||
}
|
||||
|
||||
export function getClassWithTestleerlingAndTestleerkracht(): Class {
|
||||
return classWithTestleerlingAndTestleerkracht;
|
||||
}
|
||||
|
|
|
@ -2,30 +2,35 @@ import { EntityManager } from '@mikro-orm/core';
|
|||
import { TeacherInvitation } from '../../../src/entities/classes/teacher-invitation.entity';
|
||||
import { Teacher } from '../../../src/entities/users/teacher.entity';
|
||||
import { Class } from '../../../src/entities/classes/class.entity';
|
||||
import { ClassStatus } from '@dwengo-1/common/util/class-join-request';
|
||||
|
||||
export function makeTestTeacherInvitations(em: EntityManager, teachers: Teacher[], classes: Class[]): TeacherInvitation[] {
|
||||
const teacherInvitation01 = em.create(TeacherInvitation, {
|
||||
sender: teachers[1],
|
||||
receiver: teachers[0],
|
||||
class: classes[1],
|
||||
status: ClassStatus.Open,
|
||||
});
|
||||
|
||||
const teacherInvitation02 = em.create(TeacherInvitation, {
|
||||
sender: teachers[1],
|
||||
receiver: teachers[2],
|
||||
class: classes[1],
|
||||
status: ClassStatus.Open,
|
||||
});
|
||||
|
||||
const teacherInvitation03 = em.create(TeacherInvitation, {
|
||||
sender: teachers[2],
|
||||
receiver: teachers[0],
|
||||
class: classes[2],
|
||||
status: ClassStatus.Open,
|
||||
});
|
||||
|
||||
const teacherInvitation04 = em.create(TeacherInvitation, {
|
||||
sender: teachers[0],
|
||||
receiver: teachers[1],
|
||||
class: classes[0],
|
||||
status: ClassStatus.Open,
|
||||
});
|
||||
|
||||
return [teacherInvitation01, teacherInvitation02, teacherInvitation03, teacherInvitation04];
|
||||
|
|
|
@ -15,7 +15,14 @@ export const TEST_STUDENTS = [
|
|||
{ username: 'testleerling1', firstName: 'Gerald', lastName: 'Schmittinger' },
|
||||
];
|
||||
|
||||
let testStudents: Student[];
|
||||
|
||||
// 🏗️ Functie die ORM entities maakt uit de data array
|
||||
export function makeTestStudents(em: EntityManager): Student[] {
|
||||
return TEST_STUDENTS.map((data) => em.create(Student, data));
|
||||
testStudents = TEST_STUDENTS.map((data) => em.create(Student, data));
|
||||
return testStudents;
|
||||
}
|
||||
|
||||
export function getTestleerling1(): Student {
|
||||
return testStudents.find(it => it.username == "testleerling1");
|
||||
}
|
||||
|
|
|
@ -2,37 +2,64 @@ import { Teacher } from '../../../src/entities/users/teacher.entity';
|
|||
import { EntityManager } from '@mikro-orm/core';
|
||||
|
||||
export function makeTestTeachers(em: EntityManager): Teacher[] {
|
||||
const teacher01 = em.create(Teacher, {
|
||||
teacher01 = em.create(Teacher, {
|
||||
username: 'FooFighters',
|
||||
firstName: 'Dave',
|
||||
lastName: 'Grohl',
|
||||
});
|
||||
|
||||
const teacher02 = em.create(Teacher, {
|
||||
teacher02 = em.create(Teacher, {
|
||||
username: 'LimpBizkit',
|
||||
firstName: 'Fred',
|
||||
lastName: 'Durst',
|
||||
});
|
||||
|
||||
const teacher03 = em.create(Teacher, {
|
||||
teacher03 = em.create(Teacher, {
|
||||
username: 'Staind',
|
||||
firstName: 'Aaron',
|
||||
lastName: 'Lewis',
|
||||
});
|
||||
|
||||
// Should not be used, gets deleted in a unit test
|
||||
const teacher04 = em.create(Teacher, {
|
||||
teacher04 = em.create(Teacher, {
|
||||
username: 'ZesdeMetaal',
|
||||
firstName: 'Wannes',
|
||||
lastName: 'Cappelle',
|
||||
});
|
||||
|
||||
// Makes sure when logged in as testleerkracht1, there exists a corresponding user
|
||||
const teacher05 = em.create(Teacher, {
|
||||
testleerkracht1 = em.create(Teacher, {
|
||||
username: 'testleerkracht1',
|
||||
firstName: 'Bob',
|
||||
lastName: 'Dylan',
|
||||
firstName: 'Kris',
|
||||
lastName: 'Coolsaet',
|
||||
});
|
||||
|
||||
return [teacher01, teacher02, teacher03, teacher04, teacher05];
|
||||
return [teacher01, teacher02, teacher03, teacher04, testleerkracht1];
|
||||
}
|
||||
|
||||
let teacher01: Teacher;
|
||||
let teacher02: Teacher;
|
||||
let teacher03: Teacher;
|
||||
let teacher04: Teacher;
|
||||
let testleerkracht1: Teacher;
|
||||
|
||||
export function getTeacher01(): Teacher {
|
||||
return teacher01;
|
||||
}
|
||||
|
||||
export function getTeacher02(): Teacher {
|
||||
return teacher02;
|
||||
}
|
||||
|
||||
export function getTeacher03(): Teacher {
|
||||
return teacher03;
|
||||
}
|
||||
|
||||
export function getTeacher04(): Teacher {
|
||||
return teacher04;
|
||||
}
|
||||
|
||||
export function getTestleerkracht1(): Teacher {
|
||||
return testleerkracht1;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue