PHP WebShell

Текущая директория: /opt/BitGoJS/modules/sdk-coin-avaxc/dist/test/unit

Просмотр файла: transferBuilder.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 should_1 = __importDefault(require("should"));
const src_1 = require("../../src");
const getBuilder_1 = require("./getBuilder");
const testData = __importStar(require("../resources/avaxc"));
const sdk_core_1 = require("@bitgo/sdk-core");
const sdk_coin_eth_1 = require("@bitgo/sdk-coin-eth");
const statics_1 = require("@bitgo/statics");
const amount = '20000';
const toAddress = '0x7325A3F7d4f9E86AE62Cf742426078C3755730d5';
const keyPair = new src_1.KeyPair();
const key = keyPair.getKeys().prv;
const tokensNames = [
    'avaxc:png',
    'avaxc:xava',
    'avaxc:klo',
    'avaxc:joe',
    'avaxc:qi',
    'avaxc:usdt',
    'avaxc:usdc',
    'avaxc:link',
    'tavaxc:link',
];
const coin = statics_1.coins.get('avaxc');
let txBuilder;
const contractAddress = testData.TEST_ACCOUNT.ethAddress;
const initTxBuilder = () => {
    txBuilder = (0, getBuilder_1.getBuilder)('tavaxc');
    txBuilder.fee({
        fee: '280000000000',
        gasLimit: '7000000',
    });
    txBuilder.counter(1);
    txBuilder.type(sdk_core_1.TransactionType.Send);
    txBuilder.contract(contractAddress);
};
describe('AVAXERC20 Tokens', () => {
    tokensNames.forEach((tokenName) => {
        it(tokenName + ' token transfer should succeed', async () => {
            const builder = new src_1.TransferBuilder()
                .coin(tokenName)
                .expirationTime(1590078260)
                .amount(amount)
                .to(toAddress)
                .contractSequenceId(2)
                .key(key);
            const result = builder.signAndBuild(`${coin.chainId}`);
            const decode = (0, sdk_coin_eth_1.decodeTokenTransferData)(result);
            should_1.default.equal(decode.amount, '20000');
            should_1.default.equal(decode.expireTime, 1590078260);
            should_1.default.equal(decode.sequenceId, 2);
            should_1.default.equal(decode.to.toLowerCase(), toAddress.toLowerCase());
        });
    });
    it('a send token transaction', async () => {
        const amount = '100';
        initTxBuilder();
        txBuilder.contract(contractAddress);
        txBuilder
            .transfer()
            .coin('tavaxc:link')
            .amount(amount)
            .to(testData.TEST_ACCOUNT_2.ethAddress)
            .expirationTime(1590066728)
            .contractSequenceId(5)
            .key(testData.OWNER_2.ethKey);
        txBuilder.sign({
            key: testData.OWNER_1.ethKey,
        });
        const tx = await txBuilder.build();
        should_1.default.equal(tx.signature.length, 2);
        should_1.default.equal(tx.inputs.length, 1);
        should_1.default.equal(tx.inputs[0].address.toLowerCase(), contractAddress.toLowerCase());
        should_1.default.equal(tx.inputs[0].value, amount);
        should_1.default.equal(tx.inputs[0].coin, 'tavaxc:link');
        should_1.default.equal(tx.outputs.length, 1);
        should_1.default.equal(tx.outputs[0].address.toLowerCase(), testData.TEST_ACCOUNT_2.ethAddress.toLowerCase());
        should_1.default.equal(tx.outputs[0].value, amount);
        should_1.default.equal(tx.outputs[0].coin, 'tavaxc:link');
    });
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdGVzdC91bml0L3RyYW5zZmVyQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9EQUE0QjtBQUM1QixtQ0FBaUc7QUFDakcsNkNBQTBDO0FBQzFDLDZEQUErQztBQUMvQyw4Q0FBa0Q7QUFDbEQsc0RBQThEO0FBQzlELDRDQUEwRTtBQUUxRSxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUM7QUFDdkIsTUFBTSxTQUFTLEdBQUcsNENBQTRDLENBQUM7QUFDL0QsTUFBTSxPQUFPLEdBQUcsSUFBSSxhQUFPLEVBQUUsQ0FBQztBQUM5QixNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBYSxDQUFDO0FBQzVDLE1BQU0sV0FBVyxHQUFHO0lBQ2xCLFdBQVc7SUFDWCxZQUFZO0lBQ1osV0FBVztJQUNYLFdBQVc7SUFDWCxVQUFVO0lBQ1YsWUFBWTtJQUNaLFlBQVk7SUFDWixZQUFZO0lBQ1osYUFBYTtDQUNkLENBQUM7QUFDRixNQUFNLElBQUksR0FBRyxlQUFLLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBOEIsQ0FBQztBQUM3RCxJQUFJLFNBQTZCLENBQUM7QUFDbEMsTUFBTSxlQUFlLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUM7QUFDekQsTUFBTSxhQUFhLEdBQUcsR0FBUyxFQUFFO0lBQy9CLFNBQVMsR0FBRyxJQUFBLHVCQUFVLEVBQUMsUUFBUSxDQUF1QixDQUFDO0lBQ3ZELFNBQVMsQ0FBQyxHQUFHLENBQUM7UUFDWixHQUFHLEVBQUUsY0FBYztRQUNuQixRQUFRLEVBQUUsU0FBUztLQUNwQixDQUFDLENBQUM7SUFDSCxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JCLFNBQVMsQ0FBQyxJQUFJLENBQUMs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QUUvQyxnQkFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNuQyxnQkFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsRUFBRSxRQUFRLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ3BHLGdCQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzFDLGdCQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ2xELENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc2hvdWxkIGZyb20gJ3Nob3VsZCc7XG5pbXBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgYXMgQXZheENUcmFuc2ZlckJ1aWxkZXIsIFRyYW5zYWN0aW9uQnVpbGRlciwgS2V5UGFpciB9IGZyb20gJy4uLy4uL3NyYyc7XG5pbXBvcnQgeyBnZXRCdWlsZGVyIH0gZnJvbSAnLi9nZXRCdWlsZGVyJztcbmltcG9ydCAqIGFzIHRlc3REYXRhIGZyb20gJy4uL3Jlc291cmNlcy9hdmF4Yyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgZGVjb2RlVG9rZW5UcmFuc2ZlckRhdGEgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tZXRoJztcbmltcG9ydCB7IGNvaW5zLCBFdGhlcmV1bU5ldHdvcmsgYXMgRXRoTGlrZU5ldHdvcmsgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5cbmNvbnN0IGFtb3VudCA9ICcyMDAwMCc7XG5jb25zdCB0b0FkZHJlc3MgPSAnMHg3MzI1QTNGN2Q0ZjlFODZBRTYyQ2Y3NDI0MjYwNzhDMzc1NTczMGQ1JztcbmNvbnN0IGtleVBhaXIgPSBuZXcgS2V5UGFpcigpO1xuY29uc3Qga2V5ID0ga2V5UGFpci5nZXRLZXlzKCkucHJ2IGFzIHN0cmluZztcbmNvbnN0IHRva2Vuc05hbWVzID0gW1xuICAnYXZheGM6cG5nJyxcbiAgJ2F2YXhjOnhhdmEnLFxuICAnYXZheGM6a2xvJyxcbiAgJ2F2YXhjOmpvZScsXG4gICdhdmF4YzpxaScsXG4gICdhdmF4Yzp1c2R0JyxcbiAgJ2F2YXhjOnVzZGMnLFxuICAnYXZheGM6bGluaycsXG4gICd0YXZheGM6bGluaycsXG5dO1xuY29uc3QgY29pbiA9IGNvaW5zLmdldCgnYXZheGMnKSBhcyB1bmtub3duIGFzIEV0aExpa2VOZXR3b3JrO1xubGV0IHR4QnVpbGRlcjogVHJhbnNhY3Rpb25CdWlsZGVyO1xuY29uc3QgY29udHJhY3RBZGRyZXNzID0gdGVzdERhdGEuVEVTVF9BQ0NPVU5ULmV0aEFkZHJlc3M7XG5jb25zdCBpbml0VHhCdWlsZGVyID0gKCk6IHZvaWQgPT4ge1xuICB0eEJ1aWxkZXIgPSBnZXRCdWlsZGVyKCd0YXZheGMnKSBhcyBUcmFuc2FjdGlvbkJ1aWxkZXI7XG4gIHR4QnVpbGRlci5mZWUoe1xuICAgIGZlZTogJzI4MDAwMDAwMDAwMCcsXG4gICAgZ2FzTGltaXQ6ICc3MDAwMDAwJyxcbiAgfSk7XG4gIHR4QnVpbGRlci5jb3VudGVyKDEpO1xuICB0eEJ1aWxkZXIudHlwZShUcmFuc2FjdGlvblR5cGUuU2VuZCk7XG4gIHR4QnVpbGRlci5jb250cmFjdChjb250cmFjdEFkZHJlc3MpO1xufTtcblxuZGVzY3JpYmUoJ0FWQVhFUkMyMCBUb2tlbnMnLCAoKSA9PiB7XG4gIHRva2Vuc05hbWVzLmZvckVhY2goKHRva2VuTmFtZSkgPT4ge1xuICAgIGl0KHRva2VuTmFtZSArICcgdG9rZW4gdHJhbnNmZXIgc2hvdWxkIHN1Y2NlZWQnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBidWlsZGVyID0gbmV3IEF2YXhDVHJhbnNmZXJCdWlsZGVyKClcbiAgICAgICAgLmNvaW4odG9rZW5OYW1lKVxuICAgICAgICAuZXhwaXJhdGlvblRpbWUoMTU5MDA3ODI2MClcbiAgICAgICAgLmFtb3VudChhbW91bnQpXG4gICAgICAgIC50byh0b0FkZHJlc3MpXG4gICAgICAgIC5jb250cmFjdFNlcXVlbmNlSWQoMilcbiAgICAgICAgLmtleShrZXkpO1xuICAgICAgY29uc3QgcmVzdWx0ID0gYnVpbGRlci5zaWduQW5kQnVpbGQoYCR7Y29pbi5jaGFpbklkfWApO1xuICAgICAgY29uc3QgZGVjb2RlID0gZGVjb2RlVG9rZW5UcmFuc2ZlckRhdGEocmVzdWx0KTtcbiAgICAgIHNob3VsZC5lcXVhbChkZWNvZGUuYW1vdW50LCAnMjAwMDAnKTtcbiAgICAgIHNob3VsZC5lcXVhbChkZWNvZGUuZXhwaXJlVGltZSwgMTU5MDA3ODI2MCk7XG4gICAgICBzaG91bGQuZXF1YWwoZGVjb2RlLnNlcXVlbmNlSWQsIDIpO1xuICAgICAgc2hvdWxkLmVxdWFsKGRlY29kZS50by50b0xvd2VyQ2FzZSgpLCB0b0FkZHJlc3MudG9Mb3dlckNhc2UoKSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGl0KCdhIHNlbmQgdG9rZW4gdHJhbnNhY3Rpb24nLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgYW1vdW50ID0gJzEwMCc7XG5cbiAgICBpbml0VHhCdWlsZGVyKCk7XG4gICAgdHhCdWlsZGVyLmNvbnRyYWN0KGNvbnRyYWN0QWRkcmVzcyk7XG4gICAgdHhCdWlsZGVyXG4gICAgICAudHJhbnNmZXIoKVxuICAgICAgLmNvaW4oJ3RhdmF4YzpsaW5rJylcbiAgICAgIC5hbW91bnQoYW1vdW50KVxuICAgICAgLnRvKHRlc3REYXRhLlRFU1RfQUNDT1VOVF8yLmV0aEFkZHJlc3MpXG4gICAgICAuZXhwaXJhdGlvblRpbWUoMTU5MDA2NjcyOClcbiAgICAgIC5jb250cmFjdFNlcXVlbmNlSWQoNSlcbiAgICAgIC5rZXkodGVzdERhdGEuT1dORVJfMi5ldGhLZXkpO1xuICAgIHR4QnVpbGRlci5zaWduKHtcbiAgICAgIGtleTogdGVzdERhdGEuT1dORVJfMS5ldGhLZXksXG4gICAgfSk7XG4gICAgY29uc3QgdHggPSBhd2FpdCB0eEJ1aWxkZXIuYnVpbGQoKTtcbiAgICBzaG91bGQuZXF1YWwodHguc2lnbmF0dXJlLmxlbmd0aCwgMik7XG4gICAgc2hvdWxkLmVxdWFsKHR4LmlucHV0cy5sZW5ndGgsIDEpO1xuICAgIHNob3VsZC5lcXVhbCh0eC5pbnB1dHNbMF0uYWRkcmVzcy50b0xvd2VyQ2FzZSgpLCBjb250cmFjdEFkZHJlc3MudG9Mb3dlckNhc2UoKSk7XG4gICAgc2hvdWxkLmVxdWFsKHR4LmlucHV0c1swXS52YWx1ZSwgYW1vdW50KTtcbiAgICBzaG91bGQuZXF1YWwodHguaW5wdXRzWzBdLmNvaW4sICd0YXZheGM6bGluaycpO1xuXG4gICAgc2hvdWxkLmVxdWFsKHR4Lm91dHB1dHMubGVuZ3RoLCAxKTtcbiAgICBzaG91bGQuZXF1YWwodHgub3V0cHV0c1swXS5hZGRyZXNzLnRvTG93ZXJDYXNlKCksIHRlc3REYXRhLlRFU1RfQUNDT1VOVF8yLmV0aEFkZHJlc3MudG9Mb3dlckNhc2UoKSk7XG4gICAgc2hvdWxkLmVxdWFsKHR4Lm91dHB1dHNbMF0udmFsdWUsIGFtb3VudCk7XG4gICAgc2hvdWxkLmVxdWFsKHR4Lm91dHB1dHNbMF0uY29pbiwgJ3RhdmF4YzpsaW5rJyk7XG4gIH0pO1xufSk7XG4iXX0=

Выполнить команду


Для локальной разработки. Не используйте в интернете!