Fix Swap endianness data format validation

This commit is contained in:
marko1olo 2026-06-06 00:32:24 +04:00
parent d735496641
commit b870a5ba15
3 changed files with 35 additions and 1 deletions

View File

@ -71,7 +71,7 @@ class SwapEndianness extends Operation {
data = Utils.strToByteArray(input); data = Utils.strToByteArray(input);
break; break;
default: default:
data = input; throw new OperationError("Data format must be Hex or Raw");
} }
// Split up into words // Split up into words

View File

@ -174,6 +174,7 @@ import "./tests/StripTCPHeader.mjs";
import "./tests/StripUDPHeader.mjs"; import "./tests/StripUDPHeader.mjs";
import "./tests/Subsection.mjs"; import "./tests/Subsection.mjs";
import "./tests/SwapCase.mjs"; import "./tests/SwapCase.mjs";
import "./tests/SwapEndianness.mjs";
import "./tests/SymmetricDifference.mjs"; import "./tests/SymmetricDifference.mjs";
import "./tests/TakeNthBytes.mjs"; import "./tests/TakeNthBytes.mjs";
import "./tests/Template.mjs"; import "./tests/Template.mjs";

View File

@ -0,0 +1,33 @@
/**
* Swap endianness tests.
*
* @author marko1olo
* @copyright Crown Copyright 2026
* @license Apache-2.0
*/
import TestRegister from "../../lib/TestRegister.mjs";
TestRegister.addTests([
{
name: "Swap endianness: Hex data",
input: "0123456789abcdef",
expectedOutput: "67 45 23 01 ef cd ab 89",
recipeConfig: [
{
op: "Swap endianness",
args: ["Hex", 4, true],
},
],
},
{
name: "Swap endianness: empty data format",
input: "hello",
expectedOutput: "Data format must be Hex or Raw",
recipeConfig: [
{
op: "Swap endianness",
args: ["", 2, true],
},
],
},
]);