Tests now work

Also they'll work in the node API too now
This commit is contained in:
Matt C 2018-08-20 19:08:01 +01:00
parent 821dd9c48c
commit 84eaaf4819
3 changed files with 10 additions and 5 deletions

View File

@ -28,13 +28,14 @@ class FromMessagePack extends Operation {
}
/**
* @param {byteArray} input
* @param {ArrayBuffer} input
* @param {Object[]} args
* @returns {JSON}
*/
run(input, args) {
try {
return notepack.decode(input);
const buf = Buffer.from(new Uint8Array(input));
return notepack.decode(buf);
} catch (err) {
throw new OperationError(`Could not decode MessagePack to JSON: ${err}`);
}

View File

@ -34,10 +34,14 @@ class ToMessagePack extends Operation {
*/
run(input, args) {
try {
return notepack.encode(input);
if (ENVIRONMENT_IS_WORKER()) {
return notepack.encode(input);
} else {
return notepack.encode(input).buffer;
}
} catch (err) {
throw new OperationError(`Could not encode JSON to MessagePack: ${err}`);
}
}
}
}

View File

@ -350,7 +350,7 @@ TestRegister.addTests([
{
name: "From MessagePack: no content",
input: "",
expectedOutput: "Could not decode MessagePack to JSON: RangeError: offset is outside the bounds of the DataView",
expectedOutput: "Could not decode MessagePack to JSON: Error: Could not parse",
recipeConfig: [
{
"op": "From Hex",