From d17a849692a13fd2c7f4a8726404146433806ec1 Mon Sep 17 00:00:00 2001 From: dianeCdrPix Date: Wed, 6 Nov 2024 17:01:39 +0100 Subject: [PATCH] fix(api): joi validation messages in one batch --- .../learning-content/validation/element/qcu-schema.js | 8 ++++---- .../learning-content/validation/module-schema.js | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/api/tests/devcomp/unit/infrastructure/datasources/learning-content/validation/element/qcu-schema.js b/api/tests/devcomp/unit/infrastructure/datasources/learning-content/validation/element/qcu-schema.js index fe11a234f01..b64960e080d 100644 --- a/api/tests/devcomp/unit/infrastructure/datasources/learning-content/validation/element/qcu-schema.js +++ b/api/tests/devcomp/unit/infrastructure/datasources/learning-content/validation/element/qcu-schema.js @@ -18,22 +18,22 @@ const qcuElementSchema = Joi.object({ invalid: htmlSchema, }), solution: proposalIdSchema.required(), -}).custom((qcuElement, helpers) => { +}).external(async (qcuElement, helpers) => { const hasGlobalFeedbacks = qcuElement.feedbacks !== undefined; const hasSpecificFeedbacks = qcuElement.proposals.some((proposal) => proposal.feedback !== undefined); if (hasGlobalFeedbacks && hasSpecificFeedbacks) { - return helpers.message('Un QCU ne peut pas avoir à la fois des feedbacks spécifiques et globales'); + return helpers.error('Un QCU ne peut pas avoir à la fois des feedbacks spécifiques et globales'); } if (hasSpecificFeedbacks) { const someProposalsDoNotHaveSpecificFeedback = qcuElement.proposals.some( (proposal) => proposal.feedback === undefined, ); if (someProposalsDoNotHaveSpecificFeedback) { - return helpers.message('Dans ce QCU, au moins une proposition ne possède pas de feedback spécifique'); + return helpers.error('Dans ce QCU, au moins une proposition ne possède pas de feedback spécifique'); } } if (!hasGlobalFeedbacks && !hasSpecificFeedbacks) { - return helpers.message("Dans ce QCU, il n'y a ni feedbacks spécifiques, ni feedbacks globales"); + return helpers.error("Dans ce QCU, il n'y a ni feedbacks spécifiques, ni feedbacks globales"); } return qcuElement; diff --git a/api/tests/devcomp/unit/infrastructure/datasources/learning-content/validation/module-schema.js b/api/tests/devcomp/unit/infrastructure/datasources/learning-content/validation/module-schema.js index 54381f7876d..e399c3ca651 100644 --- a/api/tests/devcomp/unit/infrastructure/datasources/learning-content/validation/module-schema.js +++ b/api/tests/devcomp/unit/infrastructure/datasources/learning-content/validation/module-schema.js @@ -84,21 +84,21 @@ const grainSchema = Joi.object({ ], }), ) - .custom((value, helpers) => { + .external(async (value, helpers) => { const steppersInArray = value.filter(({ type }) => type === 'stepper'); if (steppersInArray.length > 1) { - return helpers.message("Il ne peut y avoir qu'un stepper par grain"); + return helpers.error("Il ne peut y avoir qu'un stepper par grain"); } return value; }) - .custom((value, helpers) => { + .external(async (value, helpers) => { const steppersInArray = value.filter(({ type }) => type === 'stepper'); const elementsInArray = value.filter(({ type }) => type === 'element'); const containsAnswerableElement = elementsInArray.some(({ element }) => ['qcu', 'qcm', 'qrocm'].includes(element.type), ); if (steppersInArray.length === 1 && containsAnswerableElement) { - return helpers.message( + return helpers.error( "Un grain ne peut pas être composé d'un composant 'stepper' et d'un composant 'element' répondable (QCU, QCM ou QROCM)", ); }