From cdd6b8700effa8058e530dbf3360a6fc740ce969 Mon Sep 17 00:00:00 2001 From: "Krzysztof G." <60067306+gikf@users.noreply.github.com> Date: Tue, 14 Jan 2025 21:10:04 +0100 Subject: [PATCH] feat(tools): verify answers uniqueness (#58071) Co-authored-by: Naomi Carrigan --- curriculum/schema/challenge-schema.js | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/curriculum/schema/challenge-schema.js b/curriculum/schema/challenge-schema.js index dc2a1a12712..9372e9d9f87 100644 --- a/curriculum/schema/challenge-schema.js +++ b/curriculum/schema/challenge-schema.js @@ -91,7 +91,8 @@ const questionJoi = Joi.object().keys({ feedback: Joi.string().allow(null) }) ) - .required(), + .required() + .unique('answer'), solution: Joi.number().required() }); @@ -101,9 +102,13 @@ const quizJoi = Joi.object().keys({ Joi.object().keys({ text: Joi.string().required(), distractors: Joi.array() - .items(Joi.string().required()) + .items( + Joi.valid(Joi.ref('...answer')).forbidden(), + Joi.string().required() + ) .length(3) - .required(), + .required() + .unique(), answer: Joi.string().required() }) )