she_encrypt
Version:
Cryptographic function for ciphering SHE commands args (M1-M3/M4-M5)
679 lines (602 loc) • 106 kB
text/typescript
#!/usr/bin/env node
/**
* test.ts
*
*/
// Use an IIFE for namespace isolation
((root) => {
"use strict";
/*jslint indent: 2, bitwise: false, nomen: false, plusplus: false, white: false, regexp: false */
/*global document, window, escape, unescape, module, require, Uint32Array */
const fs = require('fs');
const path = require('path');
const helpstring1 = "67656e65726174655f7368652e6a733a2055736167653a2067656e65726174655f7368652e6a73205b3c4f5054494f4e533e5d203c434f4d4d414e443e205b3c415247554d454e54533e5d0a20202020202020202020202020202020205468697320636f6d6d616e642061696d732061742067656e65726174696e6720534845206d6573736167657320666f72204d4143206b6579732070726f766973692d0a20202020202020202020202020202020206f6e6e696e672e20202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020200a202020202020202020204f5054494f4e533a20202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020200a20202020202020202020202020202020202d767c2d2d766572626f73652020202020202020202020202020206265206d6f726520766572626f7365207768656e2072756e6e696e672e20557365207365762d200a20202020202020202020202020202020202020202020202020202020202020202020202020202020202020206572616c2074696d657320696e206f7264657220746f20726169736520766572626f736974792e0a20202020202020202020434f4d4d414e44533a202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020200a20202020202020202020202020202020202d687c2d2d68656c70202020202020202020202020202020202020646973706c617920746869732068656c70206d6573736167652e202020202020202020202020200a20202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020200a20202020202020202020415247554d454e54533a2020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020200a20202020202020202020202020202020202d4b7c2d2d69736b6d61632020202020202020202020202020202067656e65726174652061204b6d616320696e7374656164206f66204b6d61737465722e202020200a20202020202020202020202020202020202d6b7c2d2d6b65795b3d5d3c6b6d61633e202020202020202020204b657920746f2062652070726f766973696f6e6e65642e202020202020202020202020202020200a20202020202020202020202020202020202d6d7c2d2d6d61737465725b3d5d3c6b6d61737465723e202020204b6d617374657220746f20636970686572206d6573736167652e202020202020202020202020200a20202020202020202020202020202020202d637c2d2d6369645b3d5d3c6369643e20202020202020202020207468652043494420746f20626520757365642e20202020202020202020202020202020202020200a20202020202020202020202020202020202d437c2d2d6368616e6e656c5b3d5d3c6368616e6e656c3e202020746865206368616e6e656c20746f206265207573656420666f72204b6d61632e202020202020200a20202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020200a436f7079726967687420c2a920323032332052454e41554c542047524f5550202f2052c3a96d6920434f48454e205343414c49203c72656d692e636f68656e2d7363616c694072656e61756c742e636f6d3e2020200a";
const helpstring2 = "67656e65726174655f7368652e6a733a20696e666f3a20766572626f7369747920282d762920696e6372656173656420746f20310a67656e65726174655f7368652e6a733a20696e666f3a206b657920282d6b292073657420746f20273130333537463032303238394144384635313236363242413938384631313131270a";
var cleanupTimer = undefined;
/**
* cleanup
*
* Clean files when tests are terminated
*/
const cleanup = () =>
{
//try{fs.rmSync("./test.err001.keystore.db")} catch(err) {};
// Cleanup timer itself
clearTimeout(cleanupTimer);
cleanupTimer.unref();
};
/**
* afterEach
*
* This method call allows to setup the instructions that have to be called after test
* execution. It allows to cleanup the directory from all temporary tests files.
*/
afterEach(() =>
{
if (cleanupTimer !== undefined)
cleanupTimer.unref();
cleanupTimer = setTimeout(cleanup, 1000);
}
);
/** =======================================================================================
* Test suite #1
*
* Nominal
* ========================================================================================
*/
describe('Test suite #1: Nominal tests of generate_she.js', () =>
{
var testKind = "nom";
var testNr = '001';
/**
* TGENSHEnom001:
*
* cmd:
* $ node ./bin/generate_she.js -h
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"-h"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("67656e65726174655f7368652e6a733a2055736167653a2067656e65726174655f7368652e6a73205b3c4f5054494f4e533e5d203c434f4d4d414e443e205b3c415247554d454e54533e5d0a20202020202020202020202020202020205468697320636f6d6d616e642061696d732061742067656e65726174696e6720534845206d6573736167657320666f72204d4143206b6579732070726f766973692d0a20202020202020202020202020202020206f6e6e696e672e20202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020200a202020202020202020204f5054494f4e533a20202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020200a20202020202020202020202020202020202d767c2d2d766572626f73652020202020202020202020202020206265206d6f726520766572626f7365207768656e2072756e6e696e672e20557365207365762d200a20202020202020202020202020202020202020202020202020202020202020202020202020202020202020206572616c2074696d657320696e206f7264657220746f20726169736520766572626f736974792e0a20202020202020202020434f4d4d414e44533a202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020200a20202020202020202020202020202020202d687c2d2d68656c70202020202020202020202020202020202020646973706c617920746869732068656c70206d6573736167652e202020202020202020202020200a20202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020200a20202020202020202020415247554d454e54533a2020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020200a20202020202020202020202020202020202d4b7c2d2d69736b6d61632020202020202020202020202020202067656e65726174652061204b6d616320696e7374656164206f66204b6d61737465722e202020200a20202020202020202020202020202020202d6b7c2d2d6b65795b3d5d3c6b6d61633e202020202020202020204b657920746f2062652070726f766973696f6e6e65642e202020202020202020202020202020200a20202020202020202020202020202020202d6d7c2d2d6d61737465725b3d5d3c6b6d61737465723e202020204b6d617374657220746f20636970686572206d6573736167652e202020202020202020202020200a20202020202020202020202020202020202d637c2d2d6369645b3d5d3c6369643e20202020202020202020207468652043494420746f20626520757365642e20202020202020202020202020202020202020200a20202020202020202020202020202020202d437c2d2d6368616e6e656c5b3d5d3c6368616e6e656c3e202020746865206368616e6e656c20746f206265207573656420666f72204b6d61632e202020202020200a20202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020200a436f7079726967687420c2a920323032332052454e41554c542047524f5550202f2052c3a96d6920434f48454e205343414c49203c72656d692e636f68656e2d7363616c694072656e61756c742e636f6d3e2020200a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '002';
/**
* TGENSHEnom002:
*
* cmd:
* $ node ./bin/generate_she.js -k 0153F7000099ED9F320451AA8A7D9707 -m 10357F020289AD8F512662BA988F1111
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"-k", "0153F7000099ED9F320451AA8A7D9707",
"-m", "10357F020289AD8F512662BA988F1111"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("4349442020202020203d2033333535343433332028307832303030303031290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303031310a4d32202020202020203d20313064323732363837613635386363303834316565383864313230623765656566356265306237316539663361313061396334663137383838636239663863300a4d33202020202020203d2065356339396539653233663439613639356538626438613233386664323237350a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030313134643362643437363362636361653461363034363263626230373731366664350a4d35202020202020203d2037333433663863623462353237333634326639653839633265346334336162610a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030313120313064323732363837613635386363303834316565383864313230623765656566356265306237316539663361313061396334663137383838636239663863302065356339396539653233663439613639356538626438613233386664323237350a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030313134643362643437363362636361653461363034363263626230373731366664352037333433663863623462353237333634326639653839633265346334336162610a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '003';
/**
* TGENSHEnom003:
*
* cmd:
* $ node ./bin/generate_she.js -K -k 0153F7000099ED9F320451AA8A7D9707 -m 10357F020289AD8F512662BA988F1111
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"-K",
"-k", "0153F7000099ED9F320451AA8A7D9707",
"-m", "10357F020289AD8F512662BA988F1111"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("4349442020202020203d2033333535343433332028307832303030303031290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303034310a4d32202020202020203d20396235363665373534653066626633656237623030616366663832373738353632613338396438316166356566366230363930663861663235313434366661320a4d33202020202020203d2065623035633231646434336265313330373538356134616163653062613561350a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030343134643362643437363362636361653461363034363263626230373731366664350a4d35202020202020203d2037353265396538313633656431663962393132333165393832306539373063650a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030343120396235363665373534653066626633656237623030616366663832373738353632613338396438316166356566366230363930663861663235313434366661322065623035633231646434336265313330373538356134616163653062613561350a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030343134643362643437363362636361653461363034363263626230373731366664352037353265396538313633656431663962393132333165393832306539373063650a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '004';
/**
* TGENSHEnom004:
*
* cmd:
* $ node ./bin/generate_she.js --verbose --key 0153F7000099ED9F320451AA8A7D9707 --master 10357F020289AD8F512662BA988F1111
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"--verbose",
"--key", "0153F7000099ED9F320451AA8A7D9707",
"--master", "10357F020289AD8F512662BA988F1111"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("67656e65726174655f7368652e6a733a20696e666f3a20766572626f7369747920282d762920696e6372656173656420746f20310a67656e65726174655f7368652e6a733a20696e666f3a206b657920282d6b292073657420746f20273031353346373030303039394544394633323034353141413841374439373037270a67656e65726174655f7368652e6a733a20696e666f3a2073637269707420282d7329207265717565737465640a4349442020202020203d2033333535343433332028307832303030303031290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303031310a4d32202020202020203d20313064323732363837613635386363303834316565383864313230623765656566356265306237316539663361313061396334663137383838636239663863300a4d33202020202020203d2065356339396539653233663439613639356538626438613233386664323237350a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030313134643362643437363362636361653461363034363263626230373731366664350a4d35202020202020203d2037333433663863623462353237333634326639653839633265346334336162610a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030313120313064323732363837613635386363303834316565383864313230623765656566356265306237316539663361313061396334663137383838636239663863302065356339396539653233663439613639356538626438613233386664323237350a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030313134643362643437363362636361653461363034363263626230373731366664352037333433663863623462353237333634326639653839633265346334336162610a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '005';
/**
* TGENSHEnom005:
*
* cmd:
* $ node ./bin/generate_she.js --verbose --iskmac --key 0153F7000099ED9F320451AA8A7D9707 --master 10357F020289AD8F512662BA988F1111
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"--verbose",
"--iskmac",
"--key", "0153F7000099ED9F320451AA8A7D9707",
"--master", "10357F020289AD8F512662BA988F1111"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("67656e65726174655f7368652e6a733a20696e666f3a20766572626f7369747920282d762920696e6372656173656420746f20310a67656e65726174655f7368652e6a733a20696e666f3a2069736b6d616320282d4b29206f7074696f6e2073656c65637465640a67656e65726174655f7368652e6a733a20696e666f3a206b657920282d6b292073657420746f20273031353346373030303039394544394633323034353141413841374439373037270a67656e65726174655f7368652e6a733a20696e666f3a2073637269707420282d7329207265717565737465640a4349442020202020203d2033333535343433332028307832303030303031290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303034310a4d32202020202020203d20396235363665373534653066626633656237623030616366663832373738353632613338396438316166356566366230363930663861663235313434366661320a4d33202020202020203d2065623035633231646434336265313330373538356134616163653062613561350a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030343134643362643437363362636361653461363034363263626230373731366664350a4d35202020202020203d2037353265396538313633656431663962393132333165393832306539373063650a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030343120396235363665373534653066626633656237623030616366663832373738353632613338396438316166356566366230363930663861663235313434366661322065623035633231646434336265313330373538356134616163653062613561350a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030343134643362643437363362636361653461363034363263626230373731366664352037353265396538313633656431663962393132333165393832306539373063650a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '006';
/**
* TGENSHEnom006:
*
* cmd:
* $ node ./bin/generate_she.js -v -k 0153F7000099ED9F320451AA8A7D9707 -m 10357F020289AD8F512662BA988F1111
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"-v",
"-k", "0153F7000099ED9F320451AA8A7D9707",
"-m", "10357F020289AD8F512662BA988F1111"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("67656e65726174655f7368652e6a733a20696e666f3a20766572626f7369747920282d762920696e6372656173656420746f20310a67656e65726174655f7368652e6a733a20696e666f3a206b657920282d6b292073657420746f20273031353346373030303039394544394633323034353141413841374439373037270a67656e65726174655f7368652e6a733a20696e666f3a2073637269707420282d7329207265717565737465640a4349442020202020203d2033333535343433332028307832303030303031290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303031310a4d32202020202020203d20313064323732363837613635386363303834316565383864313230623765656566356265306237316539663361313061396334663137383838636239663863300a4d33202020202020203d2065356339396539653233663439613639356538626438613233386664323237350a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030313134643362643437363362636361653461363034363263626230373731366664350a4d35202020202020203d2037333433663863623462353237333634326639653839633265346334336162610a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030313120313064323732363837613635386363303834316565383864313230623765656566356265306237316539663361313061396334663137383838636239663863302065356339396539653233663439613639356538626438613233386664323237350a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030313134643362643437363362636361653461363034363263626230373731366664352037333433663863623462353237333634326639653839633265346334336162610a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '007';
/**
* TGENSHEnom007:
*
* cmd:
* $ node ./bin/generate_she.js -v -K -k 0153F7000099ED9F320451AA8A7D9707 -m 10357F020289AD8F512662BA988F1111
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"-v",
"-K",
"-k", "0153F7000099ED9F320451AA8A7D9707",
"-m", "10357F020289AD8F512662BA988F1111"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("67656e65726174655f7368652e6a733a20696e666f3a20766572626f7369747920282d762920696e6372656173656420746f20310a67656e65726174655f7368652e6a733a20696e666f3a2069736b6d616320282d4b29206f7074696f6e2073656c65637465640a67656e65726174655f7368652e6a733a20696e666f3a206b657920282d6b292073657420746f20273031353346373030303039394544394633323034353141413841374439373037270a67656e65726174655f7368652e6a733a20696e666f3a2073637269707420282d7329207265717565737465640a4349442020202020203d2033333535343433332028307832303030303031290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303034310a4d32202020202020203d20396235363665373534653066626633656237623030616366663832373738353632613338396438316166356566366230363930663861663235313434366661320a4d33202020202020203d2065623035633231646434336265313330373538356134616163653062613561350a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030343134643362643437363362636361653461363034363263626230373731366664350a4d35202020202020203d2037353265396538313633656431663962393132333165393832306539373063650a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030343120396235363665373534653066626633656237623030616366663832373738353632613338396438316166356566366230363930663861663235313434366661322065623035633231646434336265313330373538356134616163653062613561350a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030343134643362643437363362636361653461363034363263626230373731366664352037353265396538313633656431663962393132333165393832306539373063650a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '008';
/**
* TGENSHEnom008:
*
* cmd:
* $ node ./bin/generate_she.js --verbose --key 0153F7000099ED9F320451AA8A7D9707 --master 10357F020289AD8F512662BA988F1111
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"--verbose",
"--key", "0153F7000099ED9F320451AA8A7D9707",
"--master", "10357F020289AD8F512662BA988F1111"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("67656e65726174655f7368652e6a733a20696e666f3a20766572626f7369747920282d762920696e6372656173656420746f20310a67656e65726174655f7368652e6a733a20696e666f3a206b657920282d6b292073657420746f20273031353346373030303039394544394633323034353141413841374439373037270a67656e65726174655f7368652e6a733a20696e666f3a2073637269707420282d7329207265717565737465640a4349442020202020203d2033333535343433332028307832303030303031290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303031310a4d32202020202020203d20313064323732363837613635386363303834316565383864313230623765656566356265306237316539663361313061396334663137383838636239663863300a4d33202020202020203d2065356339396539653233663439613639356538626438613233386664323237350a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030313134643362643437363362636361653461363034363263626230373731366664350a4d35202020202020203d2037333433663863623462353237333634326639653839633265346334336162610a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030313120313064323732363837613635386363303834316565383864313230623765656566356265306237316539663361313061396334663137383838636239663863302065356339396539653233663439613639356538626438613233386664323237350a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030313134643362643437363362636361653461363034363263626230373731366664352037333433663863623462353237333634326639653839633265346334336162610a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '009';
/**
* TGENSHEnom009:
*
* cmd:
* $ node ./bin/generate_she.js --verbose --iskmac --key 0153F7000099ED9F320451AA8A7D9707 --master 10357F020289AD8F512662BA988F1111
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"--verbose",
"--iskmac",
"--key", "0153F7000099ED9F320451AA8A7D9707",
"--master", "10357F020289AD8F512662BA988F1111"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("67656e65726174655f7368652e6a733a20696e666f3a20766572626f7369747920282d762920696e6372656173656420746f20310a67656e65726174655f7368652e6a733a20696e666f3a2069736b6d616320282d4b29206f7074696f6e2073656c65637465640a67656e65726174655f7368652e6a733a20696e666f3a206b657920282d6b292073657420746f20273031353346373030303039394544394633323034353141413841374439373037270a67656e65726174655f7368652e6a733a20696e666f3a2073637269707420282d7329207265717565737465640a4349442020202020203d2033333535343433332028307832303030303031290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303034310a4d32202020202020203d20396235363665373534653066626633656237623030616366663832373738353632613338396438316166356566366230363930663861663235313434366661320a4d33202020202020203d2065623035633231646434336265313330373538356134616163653062613561350a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030343134643362643437363362636361653461363034363263626230373731366664350a4d35202020202020203d2037353265396538313633656431663962393132333165393832306539373063650a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030343120396235363665373534653066626633656237623030616366663832373738353632613338396438316166356566366230363930663861663235313434366661322065623035633231646434336265313330373538356134616163653062613561350a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030343134643362643437363362636361653461363034363263626230373731366664352037353265396538313633656431663962393132333165393832306539373063650a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '010';
/**
* TGENSHEnom010:
*
* cmd:
* $ node ./bin/generate_she.js -k 0153F7000099ED9F320451AA8A7D9707 -m 10357F020289AD8F512662BA988F1111 -c 0x200abcd
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"-k", "0153F7000099ED9F320451AA8A7D9707",
"-m", "10357F020289AD8F512662BA988F1111",
"-c", "0x200abcd"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("4349442020202020203d2033333539383431332028307832303061626364290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303031310a4d32202020202020203d20643534303135333762313565633664623036626131366635346235663363333532303535373734333633306664326231306431323537313331306136646333300a4d33202020202020203d2039326364386161616265316664353333613733333934333032396361653630630a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030313139373366666134316461626430376233396131666433313836383833343437310a4d35202020202020203d2062356465653034363332313337373337646462326237613934356666303931650a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030313120643534303135333762313565633664623036626131366635346235663363333532303535373734333633306664326231306431323537313331306136646333302039326364386161616265316664353333613733333934333032396361653630630a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030313139373366666134316461626430376233396131666433313836383833343437312062356465653034363332313337373337646462326237613934356666303931650a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '011';
/**
* TGENSHEnom011:
*
* cmd:
* $ node ./bin/generate_she.js -K -k 0153F7000099ED9F320451AA8A7D9707 -m 10357F020289AD8F512662BA988F1111 -c 0x200abcd
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"-K",
"-k", "0153F7000099ED9F320451AA8A7D9707",
"-m", "10357F020289AD8F512662BA988F1111",
"-c", "0x200abcd"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("4349442020202020203d2033333539383431332028307832303061626364290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303034310a4d32202020202020203d20323933393034623864653062656439643533363065353537613163323031356463316231306235356234656531386336326138653136643464366636373464340a4d33202020202020203d2039666163383665663161386534636231633866363730356331356538363733300a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030343139373366666134316461626430376233396131666433313836383833343437310a4d35202020202020203d2038633661623462343561376466373434363138643262353935333764633661350a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030343120323933393034623864653062656439643533363065353537613163323031356463316231306235356234656531386336326138653136643464366636373464342039666163383665663161386534636231633866363730356331356538363733300a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030343139373366666134316461626430376233396131666433313836383833343437312038633661623462343561376466373434363138643262353935333764633661350a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '012';
/**
* TGENSHEnom012:
*
* cmd:
* $ node ./bin/generate_she.js --verbose --key 0153F7000099ED9F320451AA8A7D9707 --master 10357F020289AD8F512662BA988F1111 --cid 0x200abcd
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"--verbose",
"--key", "0153F7000099ED9F320451AA8A7D9707",
"--master", "10357F020289AD8F512662BA988F1111",
"--cid", "0x200abcd"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("67656e65726174655f7368652e6a733a20696e666f3a20766572626f7369747920282d762920696e6372656173656420746f20310a67656e65726174655f7368652e6a733a20696e666f3a206b657920282d6b292073657420746f20273031353346373030303039394544394633323034353141413841374439373037270a67656e65726174655f7368652e6a733a20696e666f3a2073637269707420282d7329207265717565737465640a67656e65726174655f7368652e6a733a20696e666f3a2043494420282d63292073657420746f20273333353938343133272e0a4349442020202020203d2033333539383431332028307832303061626364290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303031310a4d32202020202020203d20643534303135333762313565633664623036626131366635346235663363333532303535373734333633306664326231306431323537313331306136646333300a4d33202020202020203d2039326364386161616265316664353333613733333934333032396361653630630a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030313139373366666134316461626430376233396131666433313836383833343437310a4d35202020202020203d2062356465653034363332313337373337646462326237613934356666303931650a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030313120643534303135333762313565633664623036626131366635346235663363333532303535373734333633306664326231306431323537313331306136646333302039326364386161616265316664353333613733333934333032396361653630630a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030313139373366666134316461626430376233396131666433313836383833343437312062356465653034363332313337373337646462326237613934356666303931650a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '013';
/**
* TGENSHEnom013:
*
* cmd:
* $ node ./bin/generate_she.js --verbose --iskmac --key 0153F7000099ED9F320451AA8A7D9707 --master 10357F020289AD8F512662BA988F1111 --cid 0x200abcd
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"--verbose",
"--iskmac",
"--key", "0153F7000099ED9F320451AA8A7D9707",
"--master", "10357F020289AD8F512662BA988F1111",
"--cid", "0x200abcd"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("67656e65726174655f7368652e6a733a20696e666f3a20766572626f7369747920282d762920696e6372656173656420746f20310a67656e65726174655f7368652e6a733a20696e666f3a2069736b6d616320282d4b29206f7074696f6e2073656c65637465640a67656e65726174655f7368652e6a733a20696e666f3a206b657920282d6b292073657420746f20273031353346373030303039394544394633323034353141413841374439373037270a67656e65726174655f7368652e6a733a20696e666f3a2073637269707420282d7329207265717565737465640a67656e65726174655f7368652e6a733a20696e666f3a2043494420282d63292073657420746f20273333353938343133272e0a4349442020202020203d2033333539383431332028307832303061626364290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303034310a4d32202020202020203d20323933393034623864653062656439643533363065353537613163323031356463316231306235356234656531386336326138653136643464366636373464340a4d33202020202020203d2039666163383665663161386534636231633866363730356331356538363733300a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030343139373366666134316461626430376233396131666433313836383833343437310a4d35202020202020203d2038633661623462343561376466373434363138643262353935333764633661350a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030343120323933393034623864653062656439643533363065353537613163323031356463316231306235356234656531386336326138653136643464366636373464342039666163383665663161386534636231633866363730356331356538363733300a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030343139373366666134316461626430376233396131666433313836383833343437312038633661623462343561376466373434363138643262353935333764633661350a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '014';
/**
* TGENSHEnom014:
*
* cmd:
* $ node ./bin/generate_she.js -v -k 0153F7000099ED9F320451AA8A7D9707 -m 10357F020289AD8F512662BA988F1111 -c 0x200abcd
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"-v",
"-k", "0153F7000099ED9F320451AA8A7D9707",
"-m", "10357F020289AD8F512662BA988F1111",
"-c", "0x200abcd"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("67656e65726174655f7368652e6a733a20696e666f3a20766572626f7369747920282d762920696e6372656173656420746f20310a67656e65726174655f7368652e6a733a20696e666f3a206b657920282d6b292073657420746f20273031353346373030303039394544394633323034353141413841374439373037270a67656e65726174655f7368652e6a733a20696e666f3a2073637269707420282d7329207265717565737465640a67656e65726174655f7368652e6a733a20696e666f3a2043494420282d63292073657420746f20273333353938343133272e0a4349442020202020203d2033333539383431332028307832303061626364290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303031310a4d32202020202020203d20643534303135333762313565633664623036626131366635346235663363333532303535373734333633306664326231306431323537313331306136646333300a4d33202020202020203d2039326364386161616265316664353333613733333934333032396361653630630a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030313139373366666134316461626430376233396131666433313836383833343437310a4d35202020202020203d2062356465653034363332313337373337646462326237613934356666303931650a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030313120643534303135333762313565633664623036626131366635346235663363333532303535373734333633306664326231306431323537313331306136646333302039326364386161616265316664353333613733333934333032396361653630630a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030313139373366666134316461626430376233396131666433313836383833343437312062356465653034363332313337373337646462326237613934356666303931650a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '015';
/**
* TGENSHEnom015:
*
* cmd:
* $ node ./bin/generate_she.js -v -K -k 0153F7000099ED9F320451AA8A7D9707 -m 10357F020289AD8F512662BA988F1111 -c 0x200abcd
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"-v",
"-K",
"-k", "0153F7000099ED9F320451AA8A7D9707",
"-m", "10357F020289AD8F512662BA988F1111",
"-c", "0x200abcd"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("67656e65726174655f7368652e6a733a20696e666f3a20766572626f7369747920282d762920696e6372656173656420746f20310a67656e65726174655f7368652e6a733a20696e666f3a2069736b6d616320282d4b29206f7074696f6e2073656c65637465640a67656e65726174655f7368652e6a733a20696e666f3a206b657920282d6b292073657420746f20273031353346373030303039394544394633323034353141413841374439373037270a67656e65726174655f7368652e6a733a20696e666f3a2073637269707420282d7329207265717565737465640a67656e65726174655f7368652e6a733a20696e666f3a2043494420282d63292073657420746f20273333353938343133272e0a4349442020202020203d2033333539383431332028307832303061626364290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303034310a4d32202020202020203d20323933393034623864653062656439643533363065353537613163323031356463316231306235356234656531386336326138653136643464366636373464340a4d33202020202020203d2039666163383665663161386534636231633866363730356331356538363733300a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030343139373366666134316461626430376233396131666433313836383833343437310a4d35202020202020203d2038633661623462343561376466373434363138643262353935333764633661350a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030343120323933393034623864653062656439643533363065353537613163323031356463316231306235356234656531386336326138653136643464366636373464342039666163383665663161386534636231633866363730356331356538363733300a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030343139373366666134316461626430376233396131666433313836383833343437312038633661623462343561376466373434363138643262353935333764633661350a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '016';
/**
* TGENSHEnom016:
*
* cmd:
* $ node ./bin/generate_she.js --verbose --key 0153F7000099ED9F320451AA8A7D9707 --master 10357F020289AD8F512662BA988F1111 --cid 0x200abcd
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"--verbose",
"--key", "0153F7000099ED9F320451AA8A7D9707",
"--master", "10357F020289AD8F512662BA988F1111",
"--cid", "0x200abcd"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("67656e65726174655f7368652e6a733a20696e666f3a20766572626f7369747920282d762920696e6372656173656420746f20310a67656e65726174655f7368652e6a733a20696e666f3a206b657920282d6b292073657420746f20273031353346373030303039394544394633323034353141413841374439373037270a67656e65726174655f7368652e6a733a20696e666f3a2073637269707420282d7329207265717565737465640a67656e65726174655f7368652e6a733a20696e666f3a2043494420282d63292073657420746f20273333353938343133272e0a4349442020202020203d2033333539383431332028307832303061626364290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303031310a4d32202020202020203d20643534303135333762313565633664623036626131366635346235663363333532303535373734333633306664326231306431323537313331306136646333300a4d33202020202020203d2039326364386161616265316664353333613733333934333032396361653630630a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030313139373366666134316461626430376233396131666433313836383833343437310a4d35202020202020203d2062356465653034363332313337373337646462326237613934356666303931650a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030313120643534303135333762313565633664623036626131366635346235663363333532303535373734333633306664326231306431323537313331306136646333302039326364386161616265316664353333613733333934333032396361653630630a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030313139373366666134316461626430376233396131666433313836383833343437312062356465653034363332313337373337646462326237613934356666303931650a");
expect(subproc.stderr.toString('hex')).toBe("");
}
);
var testNr = '017';
/**
* TGENSHEnom017:
*
* cmd:
* $ node ./bin/generate_she.js --verbose --iskmac --key 0153F7000099ED9F320451AA8A7D9707 --master 10357F020289AD8F512662BA988F1111 --cid 0x200abcd
*/
test(`TGENSHE${testKind}${testNr}: `, () =>
{
const {spawnSync} = require("node:child_process");
const subproc =
spawnSync(
"node",
[
"./bin/generate_she.js",
"--verbose",
"--iskmac",
"--key", "0153F7000099ED9F320451AA8A7D9707",
"--master", "10357F020289AD8F512662BA988F1111",
"--cid", "0x200abcd"
],
{
stdio: [
0,
'pipe',
'pipe'
]
}
);
expect(subproc.status).toBe(0x00);
expect(subproc.stdout.toString('hex')).toBe("67656e65726174655f7368652e6a733a20696e666f3a20766572626f7369747920282d762920696e6372656173656420746f20310a67656e65726174655f7368652e6a733a20696e666f3a2069736b6d616320282d4b29206f7074696f6e2073656c65637465640a67656e65726174655f7368652e6a733a20696e666f3a206b657920282d6b292073657420746f20273031353346373030303039394544394633323034353141413841374439373037270a67656e65726174655f7368652e6a733a20696e666f3a2073637269707420282d7329207265717565737465640a67656e65726174655f7368652e6a733a20696e666f3a2043494420282d63292073657420746f20273333353938343133272e0a4349442020202020203d2033333539383431332028307832303061626364290a4d31202020202020203d2030303030303030303030303030303030303030303030303030303030303034310a4d32202020202020203d20323933393034623864653062656439643533363065353537613163323031356463316231306235356234656531386336326138653136643464366636373464340a4d33202020202020203d2039666163383665663161386534636231633866363730356331356538363733300a4d34202020202020203d20303030303030303030303030303030303030303030303030303030303030343139373366666134316461626430376233396131666433313836383833343437310a4d35202020202020203d2038633661623462343561376466373434363138643262353935333764633661350a4d317c4d327c4d33203d20303030303030303030303030303030303030303030303030303030303030343120323933393034623864653062656439643533363065353537613163323031356463316231306235356234656531386336326138653136643464366636373464342039666163383665663161386534636231633866363730356331356538363733300a4d347c4d35202020203d20303030303030303030303030303030303030303030303030303030303030343139373366666134316461626430376233396131666433313836383833343437312038633661623462343561376466373434363138643262353935333764633661350a");
expect(subproc.stderr.toString('hex')).toBe("");
}