You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
1.3 KiB
65 lines
1.3 KiB
// this are dev dependencies |
|
var diff = require("jest-diff"); |
|
|
|
var _require = require("jest-diff/build/constants"), |
|
NO_DIFF_MESSAGE = _require.NO_DIFF_MESSAGE; |
|
|
|
var _require2 = require("@webassemblyjs/wasm-parser"), |
|
decode = _require2.decode; |
|
|
|
var oldConsoleLog = console.log; |
|
export function compareArrayBuffers(l, r) { |
|
/** |
|
* Decode left |
|
*/ |
|
var bufferL = ""; |
|
|
|
console.log = function () { |
|
for (var _len = arguments.length, texts = new Array(_len), _key = 0; _key < _len; _key++) { |
|
texts[_key] = arguments[_key]; |
|
} |
|
|
|
return bufferL += texts.join("") + "\n"; |
|
}; |
|
|
|
try { |
|
decode(l, { |
|
dump: true |
|
}); |
|
} catch (e) { |
|
console.error(bufferL); |
|
console.error(e); |
|
throw e; |
|
} |
|
/** |
|
* Decode right |
|
*/ |
|
|
|
|
|
var bufferR = ""; |
|
|
|
console.log = function () { |
|
for (var _len2 = arguments.length, texts = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { |
|
texts[_key2] = arguments[_key2]; |
|
} |
|
|
|
return bufferR += texts.join("") + "\n"; |
|
}; |
|
|
|
try { |
|
decode(r, { |
|
dump: true |
|
}); |
|
} catch (e) { |
|
console.error(bufferR); |
|
console.error(e); |
|
throw e; |
|
} |
|
|
|
console.log = oldConsoleLog; |
|
var out = diff(bufferL, bufferR); |
|
|
|
if (out !== null && out !== NO_DIFF_MESSAGE) { |
|
throw new Error("\n" + out); |
|
} |
|
} |