|
var Joi = require('../');
|
|
|
|
|
|
var schema = Joi.object().options({ abortEarly: false }).keys({
|
|
email: Joi.string().email().required().label('User Email'),
|
|
password: Joi.string().min(8).required(),
|
|
password_confirmation: Joi.any().valid(Joi.ref('password')).required().options({ language: { any: { allowOnly: 'must match password' }, label: 'Password Confirmation' } }).label('This label is not used because language.label takes precedence'),
|
|
first_name: Joi.string().required(),
|
|
last_name: Joi.string().required(),
|
|
company: Joi.string().optional()
|
|
});
|
|
|
|
|
|
var data = {
|
|
email: 'not_a_valid_email_to_show_custom_label',
|
|
password: 'abcd1234',
|
|
password_confirmation: 'abc1',
|
|
first_name: 'Joe',
|
|
last_name: 'Doe'
|
|
};
|
|
|
|
Joi.assert(data, schema);
|