esquema
v0.1.3
Published
validate objects against a schema
Downloads
12
Readme
esquema
validate objects against a schema.
installation
npm install --save esquematests
npm testusage
...
var e = require('esquema');
var validateUser = e({
_id: {
type: Number,
required: true
},
name: String,
email: {
type: String,
required: true,
validator: function (value) {
return /foo/.test(value);
}
}
});
var user1 = {_id: 123, email: '[email protected]', name: 'joe', foo: 'bar'};
var user2 = {email: '[email protected]'};
var user3 = {_id: 456, email: '[email protected]', foo: 'bar'};
var res1 = validateUser(user1);
console.log(res1); // {ok: true, errors: []}
var res2 = validateUser(user2);
console.log(res2); // {ok: false, errors: [{path: '_id', reason: 'missing required property'}]}
var res3 = validateUser(user3);
console.log(res3); // {ok: false, errors: [{path: 'email', reason: 'validation error'}]}
...license
MIT
