reliable-zeromq
Version:
A collection of reliable zeromq messaging constructs
137 lines • 12 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
/* tslint:disable: no-string-literal */
const ava_1 = __importDefault(require("ava"));
const JSONBigInt_1 = __importDefault(require("../../../Src/Utils/JSONBigInt"));
const test = ava_1.default;
test.before((t) => {
t.context.DummyData =
[
{
service_id: 1n,
service_name: "Green, Gottlieb and Huel",
uptime: 99n,
donations: "1GvqDK1Sjp6eZmVUVq7fxDxp8CghmPG9rD",
ip_address: "4.72.61.51",
currency: "Euro",
test_array: [
{
a: 743671n,
b: "() => {}",
c: [23194673219n, 50n, 123n],
},
{
a: 1234512487n,
b: "myString()",
c: [23194673219n],
},
],
},
{
service_id: 2n,
service_name: "Russel-Fritsch",
uptime: 8n,
donations: "1PMtLuNNM2k3byMG6ZBJnbGo1eLWsVHq1c",
ip_address: "122.207.215.79",
currency: "Euro",
test_array: [
{
a: 1234512487n,
b: "myString()",
c: [23194673219n],
},
],
},
{
service_id: 3n,
service_name: "Goodwin LLC",
uptime: -49n,
donations: "1G4f2cb47vjSwzmAStQqrZQRbfvZqzpvoU",
ip_address: "171.166.74.208",
currency: "Rupee",
test_array: [
{
a: 743671n,
b: "() => {}",
c: [23194673219n],
},
{
a: 1234512487n,
b: "123451asd2487n",
c: [23194673219n],
},
{
a: 1234512487n,
b: "zoo_cage()",
c: [23194673219n],
},
],
},
{
service_id: 4n,
service_name: "Deckow LLC",
uptime: 43393n,
donations: "17iCaQAmDVkospeAoDxBXK3hE6HyRwbHXw",
ip_address: "251.236.238.241",
currency: "Zloty",
test_array: [
{
a: 1234512487n,
b: "zoo_cage()",
c: [23194673219n],
},
],
},
];
t.context.DummyString = "[{\"service_id\":\"1n\",\"service_name\":\"Green, Gottlieb and Huel\",\"uptime\":\"99n\",\"donations\":\"1GvqDK1Sjp6eZmVUVq7fxDxp8CghmPG9rD\",\"ip_address\":\"4.72.61.51\",\"currency\":\"Euro\",\"test_array\":[{\"a\":\"743671n\",\"b\":\"() => {}\",\"c\":[\"23194673219n\",\"50n\",\"123n\"]},{\"a\":\"1234512487n\",\"b\":\"myString()\",\"c\":[\"23194673219n\"]}]},{\"service_id\":\"2n\",\"service_name\":\"Russel-Fritsch\",\"uptime\":\"8n\",\"donations\":\"1PMtLuNNM2k3byMG6ZBJnbGo1eLWsVHq1c\",\"ip_address\":\"122.207.215.79\",\"currency\":\"Euro\",\"test_array\":[{\"a\":\"1234512487n\",\"b\":\"myString()\",\"c\":[\"23194673219n\"]}]},{\"service_id\":\"3n\",\"service_name\":\"Goodwin LLC\",\"uptime\":\"-49n\",\"donations\":\"1G4f2cb47vjSwzmAStQqrZQRbfvZqzpvoU\",\"ip_address\":\"171.166.74.208\",\"currency\":\"Rupee\",\"test_array\":[{\"a\":\"743671n\",\"b\":\"() => {}\",\"c\":[\"23194673219n\"]},{\"a\":\"1234512487n\",\"b\":\"123451asd2487n\",\"c\":[\"23194673219n\"]},{\"a\":\"1234512487n\",\"b\":\"zoo_cage()\",\"c\":[\"23194673219n\"]}]},{\"service_id\":\"4n\",\"service_name\":\"Deckow LLC\",\"uptime\":\"43393n\",\"donations\":\"17iCaQAmDVkospeAoDxBXK3hE6HyRwbHXw\",\"ip_address\":\"251.236.238.241\",\"currency\":\"Zloty\",\"test_array\":[{\"a\":\"1234512487n\",\"b\":\"zoo_cage()\",\"c\":[\"23194673219n\"]}]}]";
});
test("Stringify", (t) => {
const lObjectWithBigInt = t.context.DummyData;
const lTargetObject = t.context.DummyString;
const lStringifiedObject = JSONBigInt_1.default.Stringify(lObjectWithBigInt);
t.is(lStringifiedObject, lTargetObject);
});
test("Parse", (t) => {
t.is(JSONBigInt_1.default.Stringify(5n), "\"5n\"");
t.is(JSONBigInt_1.default.Parse("\"5n\""), 5n);
t.is(JSONBigInt_1.default.Stringify(-21n), "\"-21n\"");
t.is(JSONBigInt_1.default.Parse("\"-21n\""), -21n);
t.is(JSONBigInt_1.default.Parse("\"-21an\""), "-21an");
t.is(JSONBigInt_1.default.Parse("\"2137646512-634n\""), "2137646512-634n");
t.is(JSONBigInt_1.default.Parse("\"76854678n%\""), "76854678n%");
t.is(JSONBigInt_1.default.Parse("\"768[]54678n\""), "768[]54678n");
const lStartingString = t.context.DummyString;
const lTargetObject = t.context.DummyData;
const lParsedObject = JSONBigInt_1.default.Parse(lStartingString);
t.deepEqual(lParsedObject, lTargetObject);
const lStartingStringWithNegative = `{ "data": "-1n", "another_data":{"positive":"1n", "negative":"-1n"}}`;
const lExpected = {
data: -1n,
another_data: {
positive: 1n,
negative: -1n,
},
};
t.deepEqual(JSONBigInt_1.default.Parse(lStartingStringWithNegative), lExpected);
});
test("Stringify & Parse", (t) => {
const lTargetObject = t.context.DummyData;
const lStringified = JSONBigInt_1.default.Stringify(t.context.DummyData);
const lParsed = JSONBigInt_1.default.Parse(lStringified);
t.deepEqual(lParsed, lTargetObject);
t.deepEqual(lStringified, t.context.DummyString);
function StringifyThenParse(aInput) {
return JSONBigInt_1.default.Parse(JSONBigInt_1.default.Stringify(aInput));
}
t.is(StringifyThenParse(undefined), undefined);
t.is(StringifyThenParse(null), null);
t.is(StringifyThenParse(void (0)), void (0));
t.deepEqual(StringifyThenParse({}), {});
t.is(StringifyThenParse(""), "");
t.is(StringifyThenParse(0n), 0n);
t.is(StringifyThenParse(-1n), -1n);
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSlNPTkJpZ0ludC50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vVGVzdC9TcmMvVXRpbHMvSlNPTkJpZ0ludC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsdUNBQXVDO0FBQ3ZDLDhDQUFnRDtBQUVoRCwrRUFBdUQ7QUFRdkQsTUFBTSxJQUFJLEdBQWdDLGFBQXNDLENBQUU7QUFvQmxGLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFpQyxFQUFRLEVBQUU7SUFFcEQsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTO1FBQ25CO1lBQ0U7Z0JBQ0UsVUFBVSxFQUFFLEVBQUU7Z0JBQ2QsWUFBWSxFQUFFLDBCQUEwQjtnQkFDeEMsTUFBTSxFQUFFLEdBQUc7Z0JBQ1gsU0FBUyxFQUFFLG9DQUFvQztnQkFDL0MsVUFBVSxFQUFFLFlBQVk7Z0JBQ3hCLFFBQVEsRUFBRSxNQUFNO2dCQUNoQixVQUFVLEVBQUU7b0JBQ1Y7d0JBQ0UsQ0FBQyxFQUFFLE9BQU87d0JBQ1YsQ0FBQyxFQUFFLFVBQVU7d0JBQ2IsQ0FBQyxFQUFFLENBQUMsWUFBWSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUM7cUJBQzdCO29CQUNEO3dCQUNFLENBQUMsRUFBRSxXQUFXO3dCQUNkLENBQUMsRUFBRSxZQUFZO3dCQUNmLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQztxQkFDbEI7aUJBQ0Y7YUFDRjtZQUNEO2dCQUNFLFVBQVUsRUFBRSxFQUFFO2dCQUNkLFlBQVksRUFBRSxnQkFBZ0I7Z0JBQzlCLE1BQU0sRUFBRSxFQUFFO2dCQUNWLFNBQVMsRUFBRSxvQ0FBb0M7Z0JBQy9DLFVBQVUsRUFBRSxnQkFBZ0I7Z0JBQzVCLFFBQVEsRUFBRSxNQUFNO2dCQUNoQixVQUFVLEVBQUU7b0JBQ1Y7d0JBQ0UsQ0FBQyxFQUFFLFdBQVc7d0JBQ2QsQ0FBQyxFQUFFLFlBQVk7d0JBQ2YsQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDO3FCQUNs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LENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDL0MsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNyQyxDQUFDLENBQUMsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEtBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNDLENBQUMsQ0FBQyxTQUFTLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDeEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNqQyxDQUFDLENBQUMsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2pDLENBQUMsQ0FBQyxFQUFFLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ3ZDLENBQUMsQ0FBQyxDQUFDIn0=