mi esquema es:
const scenerioSchema = Joi.object({ drawingNode: Joi.object({ moduleRackOutputs: Joi.array() .items( Joi.object({ moduleId: Joi.string().required() }) ) .unique((a, b) => a.moduleId !== b.moduleId) }) })mis datos son:
const mockScenario1 = { drawingNode: { moduleRackOutputs: [ { moduleId: 'module1' }, { moduleId: 'module2' } ] } }Cuando valido con:
const validationResponse = scenerioSchema.validate(mockScenario1)Yo obtengo:
{ validationResponse: { value: { drawingNode: [Object] }, error: [Error [ValidationError]: "drawingNode.moduleRackOutputs[1]" contains a duplicate value] { _original: [Object], details: [Array] } } } Pero (a) eso no es cierto: los elementos no son duplicados y (b) quiero que ocurra un error si el moduleId es diferente.
¿Qué estoy haciendo mal?