@ledgerhq/coin-multiversx
Version:
Ledger MultiversX Coin integration
78 lines • 3.52 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const bignumber_js_1 = __importDefault(require("bignumber.js"));
const buildOptimisticOperation_1 = require("./buildOptimisticOperation");
describe("buildOptimisticOperation", () => {
it("should work with mode = send", async () => {
const account = {
freshAddress: "erd1qyu5wthldzr8wx5c9ucg8kjagg0jfs53s8nr3zpz3hypefsdd8ssycr6th",
};
const transaction = {
family: "multiversx",
mode: "send",
fees: new bignumber_js_1.default("1"),
amount: new bignumber_js_1.default("42"),
recipient: "erd1spyavw0956vq68xj8y4tenjpq2wd5a9p2c6j8gsz7ztyrnpxrruqzu66jx",
};
const notSignedTransaction = {
nonce: 7,
};
const operation = (0, buildOptimisticOperation_1.buildOptimisticOperation)(account, transaction, notSignedTransaction);
expect(operation.type).toEqual("OUT");
expect(operation.value).toEqual(new bignumber_js_1.default("43"));
expect(operation.fee).toEqual(new bignumber_js_1.default("1"));
expect(operation.extra).toEqual({
amount: new bignumber_js_1.default("0"),
});
});
it("should work with mode = delegate", async () => {
const account = {
freshAddress: "erd1qyu5wthldzr8wx5c9ucg8kjagg0jfs53s8nr3zpz3hypefsdd8ssycr6th",
};
const transaction = {
family: "multiversx",
mode: "delegate",
fees: new bignumber_js_1.default("1"),
amount: new bignumber_js_1.default("42"),
recipient: "erd1qqqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqqqqqqqqqqqqppllllls9ftvxy",
data: "delegate",
};
const notSignedTransaction = {
nonce: 7,
};
const operation = (0, buildOptimisticOperation_1.buildOptimisticOperation)(account, transaction, notSignedTransaction);
expect(operation.type).toEqual("DELEGATE");
expect(operation.value).toEqual(new bignumber_js_1.default("43"));
expect(operation.fee).toEqual(new bignumber_js_1.default("1"));
expect(operation.extra).toEqual({
amount: new bignumber_js_1.default("42"),
});
});
it("should work with mode = claimRewards", async () => {
const account = {
freshAddress: "erd1qyu5wthldzr8wx5c9ucg8kjagg0jfs53s8nr3zpz3hypefsdd8ssycr6th",
};
const transaction = {
family: "multiversx",
mode: "claimRewards",
fees: new bignumber_js_1.default("1"),
amount: new bignumber_js_1.default("42"),
recipient: "erd1qqqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqqqqqqqqqqqqppllllls9ftvxy",
data: "claimRewards",
};
const notSignedTransaction = {
nonce: 7,
};
const operation = (0, buildOptimisticOperation_1.buildOptimisticOperation)(account, transaction, notSignedTransaction);
expect(operation.type).toEqual("REWARD");
expect(operation.value).toEqual(new bignumber_js_1.default("1"));
expect(operation.fee).toEqual(new bignumber_js_1.default("1"));
expect(operation.extra).toEqual({
amount: new bignumber_js_1.default("0"),
});
});
});
//# sourceMappingURL=buildOptimisticOperation.test.js.map