diff --git a/helpers/Dojo/AssignmentValidator.ts b/helpers/Dojo/AssignmentValidator.ts index a4d33b20fa50420f4b577acb24c7ef0910e6c093..3de36ad54a7d4432c55e1669da83caa4f883ed8e 100644 --- a/helpers/Dojo/AssignmentValidator.ts +++ b/helpers/Dojo/AssignmentValidator.ts @@ -26,6 +26,7 @@ class AssignmentValidator { public isFinished: boolean = false; public success: boolean = false; public exitCode: number = -1; + public fatalErrorMessage: string = ''; constructor(private folderAssignment: string) { this.events.on('logs', (log: string, _error: boolean, displayable: boolean) => { @@ -46,6 +47,8 @@ class AssignmentValidator { let assignmentFile: AssignmentFile; const emitError = (subStepName: string, subStepMessage: string, stepName: string, stepMessage: string, code: AssignmentCheckerError) => { + this.fatalErrorMessage = stepMessage; + this.events.emit('endSubStep', subStepName, subStepMessage, true); this.events.emit('endStep', stepName, stepMessage, true); this.events.emit('finished', false, code); @@ -240,8 +243,10 @@ class AssignmentValidator { exerciseDockerCompose.run(doDown); }); } catch ( error ) { - this.events.emit('endStep', 'ASSIGNMENT_RUN', 'Assignment is already solved', true); + this.fatalErrorMessage = 'Assignment is already solved'; + this.events.emit('endStep', 'ASSIGNMENT_RUN', this.fatalErrorMessage, true); this.events.emit('finished', false, AssignmentCheckerError.COMPOSE_RUN_SUCCESSFULLY); + return; }