UNPKG

playr-json-scenario

Version:

plays back request scenarios defined in a json file

45 lines (32 loc) 1.42 kB
(function() { 'use strict'; var Class = require('ee-class') , log = require('ee-log') , type = require('ee-types') , Validator = require('./Validator') ; module.exports = new Class({ inherits: Validator // the validators priority , priority: 100 /** * validate an array */ , validate: function(name, data, validator, context) { if (!type.array(data)) return context.addMessage(`${name.cyan}: ${type(data)} !== array`); else { if (!type.undefined(validator.length)) { if (type.object(validator.length)) { return this.middleware.validateProperty(`${name}.length`, validator.length, data.length, context); } else if (type.number(validator.length)) { if (data.length !== validator.length) return context.addMessage(`${name}.length`.cyan+` !== ${validator.length.green}`); else return Promise.resolve(); } else return Promise.reject(new Error(`${name.cyan}: invalid valdiator for the array length. Expected number or object, got ${type(validator)}!`)); } else return Promise.resolve(); } } }); })();