PHP WebShell
Текущая директория: /opt/BitGoJS/modules/sdk-coin-mantra/dist/test/unit/transactionBuilder
Просмотр файла: transactionBuilder.js
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const sdk_core_1 = require("@bitgo/sdk-core");
const should_1 = __importDefault(require("should"));
const testData = __importStar(require("../../resources/mantra"));
const getBuilderFactory_1 = require("../getBuilderFactory");
describe('Mantra Transaction Builder', async () => {
const factory = (0, getBuilderFactory_1.getBuilderFactory)('tmantra');
const testTxData = testData.TEST_SEND_TX;
let data;
beforeEach(() => {
data = [
{
type: sdk_core_1.TransactionType.Send,
testTx: testData.TEST_SEND_TX,
builder: factory.getTransferBuilder(),
},
];
});
it('should build a signed tx from signed tx data', async function () {
const txBuilder = factory.from(testTxData.signedTxBase64);
const tx = await txBuilder.build();
should_1.default.equal(tx.type, sdk_core_1.TransactionType.Send);
// Should recreate the same raw tx data when re-build and turned to broadcast format
const rawTx = tx.toBroadcastFormat();
should_1.default.equal(rawTx, testTxData.signedTxBase64);
});
describe('gasBudget tests', async () => {
it('should succeed for valid gasBudget', function () {
for (const { builder } of data) {
should_1.default.doesNotThrow(() => builder.gasBudget(testTxData.gasBudget));
}
});
it('should throw for invalid gasBudget', function () {
const invalidGasBudget = 0;
for (const { builder } of data) {
(0, should_1.default)(() => builder.gasBudget({ gasLimit: invalidGasBudget })).throw('Invalid gas limit ' + invalidGasBudget);
}
});
});
it('validateAddress', function () {
const invalidAddress = { address: 'randomString' };
for (const { builder } of data) {
should_1.default.doesNotThrow(() => builder.validateAddress({ address: testTxData.sender }));
(0, should_1.default)(() => builder.validateAddress(invalidAddress)).throwError('transactionBuilder: address isValidAddress check failed: ' + invalidAddress.address);
}
});
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdGVzdC91bml0L3RyYW5zYWN0aW9uQnVpbGRlci90cmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw4Q0FBa0Q7QUFDbEQsb0RBQTRCO0FBRTVCLGlFQUFtRDtBQUNuRCw0REFBeUQ7QUFFekQsUUFBUSxDQUFDLDRCQUE0QixFQUFFLEtBQUssSUFBSSxFQUFFO0lBQ2hELE1BQU0sT0FBTyxHQUFHLElBQUEscUNBQWlCLEVBQUMsU0FBUyxDQUFDLENBQUM7SUFDN0MsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQztJQUN6QyxJQUFJLElBQUksQ0FBQztJQUVULFVBQVUsQ0FBQyxHQUFHLEVBQUU7UUFDZCxJQUFJLEdBQUc7WUFDTDtnQkFDRSxJQUFJLEVBQUUsMEJBQWUsQ0FBQyxJQUFJO2dCQUMxQixNQUFNLEVBQUUsUUFBUSxDQUFDLFlBQVk7Z0JBQzdCLE9BQU8sRUFBRSxPQUFPLENBQUMsa0JBQWtCLEVBQUU7YUFDdEM7U0FDRixDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsOENBQThDLEVBQUUsS0FBSztRQUN0RCxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMxRCxNQUFNLEVBQUUsR0FBRyxNQUFNLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNuQyxnQkFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLDBCQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUMsb0ZBQW9GO1FBQ3BGLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3JDLGdCQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDakQsQ0FBQyxDQUFDLENBQUM7SUFFSCxRQUFRLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDckMsRUFBRSxDQUFDLG9DQUFvQyxFQUFFO1lBQ3ZDLEtBQUssTUFBTSxFQUFFLE9BQU8sRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUMvQixnQkFBTSxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQ3JFLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQyxvQ0FBb0MsRUFBRTtZQUN2QyxNQUFNLGdCQUFnQixHQUFHLENBQUMsQ0FBQztZQUMzQixLQUFLLE1BQU0sRUFBRSxPQUFPLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQztnQkFDL0IsSUFBQSxnQkFBTSxFQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLG9CQUFvQixHQUFHLGdCQUFnQixDQUFDLENBQUM7WUFDakgsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsaUJBQWlCLEVBQUU7UUFDcEIsTUFBTSxjQUFjLEdBQUcsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLENBQUM7UUFDbkQsS0FBSyxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUM7WUFDL0IsZ0JBQU0sQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ25GLElBQUEsZ0JBQU0sRUFBQyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUM5RCwyREFBMkQsR0FBRyxjQUFjLENBQUMsT0FBTyxDQUNyRixDQUFDO1FBQ0osQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHNob3VsZCBmcm9tICdzaG91bGQnO1xuXG5pbXBvcnQgKiBhcyB0ZXN0RGF0YSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvbWFudHJhJztcbmltcG9ydCB7IGdldEJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi4vZ2V0QnVpbGRlckZhY3RvcnknO1xuXG5kZXNjcmliZSgnTWFudHJhIFRyYW5zYWN0aW9uIEJ1aWxkZXInLCBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IGZhY3RvcnkgPSBnZXRCdWlsZGVyRmFjdG9yeSgndG1hbnRyYScpO1xuICBjb25zdCB0ZXN0VHhEYXRhID0gdGVzdERhdGEuVEVTVF9TRU5EX1RYO1xuICBsZXQgZGF0YTtcblxuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICBkYXRhID0gW1xuICAgICAge1xuICAgICAgICB0eXBlOiBUcmFuc2FjdGlvblR5cGUuU2VuZCxcbiAgICAgICAgdGVzdFR4OiB0ZXN0RGF0YS5URVNUX1NFTkRfVFgsXG4gICAgICAgIGJ1aWxkZXI6IGZhY3RvcnkuZ2V0VHJhbnNmZXJCdWlsZGVyKCksXG4gICAgICB9LFxuICAgIF07XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgYnVpbGQgYSBzaWduZWQgdHggZnJvbSBzaWduZWQgdHggZGF0YScsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCB0eEJ1aWxkZXIgPSBmYWN0b3J5LmZyb20odGVzdFR4RGF0YS5zaWduZWRUeEJhc2U2NCk7XG4gICAgY29uc3QgdHggPSBhd2FpdCB0eEJ1aWxkZXIuYnVpbGQoKTtcbiAgICBzaG91bGQuZXF1YWwodHgudHlwZSwgVHJhbnNhY3Rpb25UeXBlLlNlbmQpO1xuICAgIC8vIFNob3VsZCByZWNyZWF0ZSB0aGUgc2FtZSByYXcgdHggZGF0YSB3aGVuIHJlLWJ1aWxkIGFuZCB0dXJuZWQgdG8gYnJvYWRjYXN0IGZvcm1hdFxuICAgIGNvbnN0IHJhd1R4ID0gdHgudG9Ccm9hZGNhc3RGb3JtYXQoKTtcbiAgICBzaG91bGQuZXF1YWwocmF3VHgsIHRlc3RUeERhdGEuc2lnbmVkVHhCYXNlNjQpO1xuICB9KTtcblxuICBkZXNjcmliZSgnZ2FzQnVkZ2V0IHRlc3RzJywgYXN5bmMgKCkgPT4ge1xuICAgIGl0KCdzaG91bGQgc3VjY2VlZCBmb3IgdmFsaWQgZ2FzQnVkZ2V0JywgZnVuY3Rpb24gKCkge1xuICAgICAgZm9yIChjb25zdCB7IGJ1aWxkZXIgfSBvZiBkYXRhKSB7XG4gICAgICAgIHNob3VsZC5kb2VzTm90VGhyb3coKCkgPT4gYnVpbGRlci5nYXNCdWRnZXQodGVzdFR4RGF0YS5nYXNCdWRnZXQpKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgdGhyb3cgZm9yIGludmFsaWQgZ2FzQnVkZ2V0JywgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3QgaW52YWxpZEdhc0J1ZGdldCA9IDA7XG4gICAgICBmb3IgKGNvbnN0IHsgYnVpbGRlciB9IG9mIGRhdGEpIHtcbiAgICAgICAgc2hvdWxkKCgpID0+IGJ1aWxkZXIuZ2FzQnVkZ2V0KHsgZ2FzTGltaXQ6IGludmFsaWRHYXNCdWRnZXQgfSkpLnRocm93KCdJbnZhbGlkIGdhcyBsaW1pdCAnICsgaW52YWxpZEdhc0J1ZGdldCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xuXG4gIGl0KCd2YWxpZGF0ZUFkZHJlc3MnLCBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgaW52YWxpZEFkZHJlc3MgPSB7IGFkZHJlc3M6ICdyYW5kb21TdHJpbmcnIH07XG4gICAgZm9yIChjb25zdCB7IGJ1aWxkZXIgfSBvZiBkYXRhKSB7XG4gICAgICBzaG91bGQuZG9lc05vdFRocm93KCgpID0+IGJ1aWxkZXIudmFsaWRhdGVBZGRyZXNzKHsgYWRkcmVzczogdGVzdFR4RGF0YS5zZW5kZXIgfSkpO1xuICAgICAgc2hvdWxkKCgpID0+IGJ1aWxkZXIudmFsaWRhdGVBZGRyZXNzKGludmFsaWRBZGRyZXNzKSkudGhyb3dFcnJvcihcbiAgICAgICAgJ3RyYW5zYWN0aW9uQnVpbGRlcjogYWRkcmVzcyBpc1ZhbGlkQWRkcmVzcyBjaGVjayBmYWlsZWQ6ICcgKyBpbnZhbGlkQWRkcmVzcy5hZGRyZXNzXG4gICAgICApO1xuICAgIH1cbiAgfSk7XG59KTtcbiJdfQ==Выполнить команду
Для локальной разработки. Не используйте в интернете!