UNPKG

htte-plugin-builtin

Version:
22 lines (21 loc) 684 B
module.exports = function(options) { return { name: 'array', kind: 'sequence', diff: function(context, literal, actual) { if (literal === null) context.throw('literal cannot be null'); if (!Array.isArray(actual)) context.throw('actual value must be array'); literal.forEach(function(itemLiteral, index) { let found = false; for (let itemActual of actual) { try { context.enter(index).diff(itemLiteral, itemActual); found = true; break; } catch (err) {} } if (!found) context.throw(`${index + 1}th element dont exist`); }); } }; };