Added a schema for input parameters to Pass class

This commit is contained in:
alexandercerutti
2018-07-17 23:26:05 +02:00
parent db2ec3ec9e
commit 5085d27fe6

39
schema.js Normal file
View File

@@ -0,0 +1,39 @@
const Joi = require("joi");
const schema = Joi.object().keys({
modelDir: Joi.string(),
modelName: Joi.string(),
certificates: Joi.object().keys({
dir: Joi.string(),
wwdr: Joi.string(),
signerCert: Joi.string(),
signerKey: Joi.object().keys({
keyFile: Joi.string(),
passphrase: Joi.string(),
})
}),
handlers: Joi.object().keys({
barcode: Joi.func(),
serialNumber: Joi.func()
}),
overrides: Joi.object()
});
const requiredSchema = schema.requiredKeys(
"",
"modelDir",
"certificates",
"certificates.dir",
"certificates.wwdr",
"certificates.signerCert",
"certificates.signerKey",
"certificates.signerKey.keyFile",
"certificates.signerKey.passphrase"
);
module.exports = {
validate: (opts) => {
let validation = Joi.validate(opts, requiredSchema);
return !validation.error;
}
};