1'use strict'; 2 3var keys = require('object-keys'); 4var forEach = require('foreach'); 5 6module.exports = function diffOperations(actual, expected, expectedMissing) { 7 var actualKeys = keys(actual); 8 var expectedKeys = keys(expected); 9 10 var extra = []; 11 var missing = []; 12 forEach(actualKeys, function (op) { 13 if (!(op in expected)) { 14 extra.push(op); 15 } 16 }); 17 forEach(expectedKeys, function (op) { 18 if (!(op in actual) && expectedMissing.indexOf(op) === -1) { 19 missing.push(op); 20 } 21 }); 22 23 return { missing: missing, extra: extra }; 24}; 25