mardi 16 janvier 2018

Verify Joi validation was added to hapi route

I am reusing a Joi schema in multiple places in my code and I would like to find a clean way to test that my endpoints are assigned the validation schema. This would be helpful since I could verify the schema behaved the way I expect without having to repeat the same series of tests everywhere the schema is used.

If I have a hapi server route:

server.route({
  method: POST,
  path: 'myUrl',
  config: {
    validate: {
      payload: validation.myJoiValidation,
    }
  }
})

how would I test that the validation.myJoiValidation object has been assigned to the config.validate.payload element?

I dug down into the hapi request object and found that what I am looking for is located in the request.route.settings.validate.payload._inner.children object, but I really don't want to have to rely on that for what I am trying to do.

Aucun commentaire:

Enregistrer un commentaire