This commit is contained in:
jg42526 2025-05-16 13:33:18 +01:00 committed by GitHub
commit 2709299711
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 573 additions and 1 deletions

View file

@ -26,6 +26,8 @@ import "./tests/Base64.mjs";
import "./tests/Base85.mjs";
import "./tests/Base92.mjs";
import "./tests/BCD.mjs";
import "./tests/BencodeEncode.mjs";
import "./tests/BencodeDecode.mjs";
import "./tests/BitwiseOp.mjs";
import "./tests/BLAKE2b.mjs";
import "./tests/BLAKE2s.mjs";

View file

@ -0,0 +1,66 @@
/**
* Bencode Encode tests.
*
* @author jg42526
* @copyright Crown Copyright 2018
* @license Apache-2.0
*/
import TestRegister from "../../lib/TestRegister.mjs";
TestRegister.addTests([
{
name: "Bencode Decode: nothing",
input: "",
expectedOutput: "",
recipeConfig: [
{
"op": "Bencode Decode",
"args": []
}
]
},
{
name: "Bencode Decode: integer",
input: "i42e",
expectedOutput: "42",
recipeConfig: [
{
"op": "Bencode Decode",
"args": []
}
]
},
{
name: "Bencode Decode: byte string",
input: "7:bencode",
expectedOutput: "bencode",
recipeConfig: [
{
"op": "Bencode Decode",
"args": []
}
]
},
{
name: "Bencode Decode: list",
input: "l7:bencodei-20ee",
expectedOutput: `["bencode",-20]`,
recipeConfig: [
{
"op": "Bencode Decode",
"args": []
}
]
},
{
name: "Bencode Decode: dictionary",
input: "d7:meaningi42e4:wiki7:bencodee",
expectedOutput: `{"meaning":42,"wiki":"bencode"}`,
recipeConfig: [
{
"op": "Bencode Decode",
"args": []
}
]
},
]);

View file

@ -0,0 +1,72 @@
/**
* Bencode Encode tests.
*
* @author jg42526
* @copyright Crown Copyright 2018
* @license Apache-2.0
*/
import TestRegister from "../../lib/TestRegister.mjs";
TestRegister.addTests([
{
name: "Bencode Encode: nothing",
input: "",
expectedOutput: "0:",
recipeConfig: [
{
"op": "Bencode Encode",
"args": []
}
]
},
{
name: "Bencode Encode: integer",
input: "42",
expectedOutput: "i42e",
recipeConfig: [
{
"op": "Bencode Encode",
"args": []
}
]
},
{
name: "Bencode Encode: byte string",
input: "bencode",
expectedOutput: "7:bencode",
recipeConfig: [
{
"op": "Bencode Encode",
"args": []
}
]
},
{
name: "Bencode Encode: list",
input: `[
"bencode",
-20
]`,
expectedOutput: "l7:bencodei-20ee",
recipeConfig: [
{
"op": "Bencode Encode",
"args": []
}
]
},
{
name: "Bencode Encode: dictionary",
input: `{
"meaning": 42,
"wiki": "bencode"
}`,
expectedOutput: "d7:meaningi42e4:wiki7:bencodee",
recipeConfig: [
{
"op": "Bencode Encode",
"args": []
}
]
},
]);