PHP WebShell

Текущая директория: /opt/BitGoJS/modules/express/dist/test/unit/clientRoutes

Просмотр файла: generateWallet.js

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const sinon = require("sinon");
require("should-http");
require("should-sinon");
require("../../lib/asserts");
const clientRoutes_1 = require("../../../src/clientRoutes");
const bitgo_1 = require("bitgo");
const sdk_core_1 = require("@bitgo/sdk-core");
describe('Generate Wallet', () => {
    it('should return the internal wallet object and keychains by default or if includeKeychains is true', async () => {
        const walletStub = sinon
            .stub()
            .resolves({ wallet: { toJSON: () => 'walletdata with keychains' } });
        const walletsStub = sinon.createStubInstance(sdk_core_1.Wallets, { generateWallet: walletStub });
        const coinStub = sinon.createStubInstance(sdk_core_1.BaseCoin, {
            wallets: sinon.stub().returns(walletsStub),
        });
        const stubBitgo = sinon.createStubInstance(bitgo_1.BitGo, { coin: sinon.stub().returns(coinStub) });
        const walletGenerateBody = {};
        const coin = 'tbtc';
        const reqDefault = {
            bitgo: stubBitgo,
            params: {
                coin,
            },
            query: {},
            body: walletGenerateBody,
        };
        const reqIncludeKeychains = {
            bitgo: stubBitgo,
            params: {
                coin,
            },
            query: {
                includeKeychains: true,
            },
            body: walletGenerateBody,
        };
        await (0, clientRoutes_1.handleV2GenerateWallet)(reqDefault).should.be.resolvedWith({ wallet: 'walletdata with keychains' });
        await (0, clientRoutes_1.handleV2GenerateWallet)(reqIncludeKeychains).should.be.resolvedWith({ wallet: 'walletdata with keychains' });
    });
    it('should only return wallet data if includeKeychains query param is false', async () => {
        const walletsStub = sinon.createStubInstance(sdk_core_1.Wallets, {
            generateWallet: { wallet: { toJSON: () => 'walletdata' } },
        });
        const coinStub = sinon.createStubInstance(sdk_core_1.BaseCoin, {
            wallets: sinon.stub().returns(walletsStub),
        });
        const stubBitgo = sinon.createStubInstance(bitgo_1.BitGo, { coin: sinon.stub().returns(coinStub) });
        const walletGenerateBody = {};
        const coin = 'tbtc';
        const req = {
            bitgo: stubBitgo,
            params: {
                coin,
            },
            query: {
                includeKeychains: 'false',
            },
            body: walletGenerateBody,
        };
        await (0, clientRoutes_1.handleV2GenerateWallet)(req).should.be.resolvedWith('walletdata');
    });
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVXYWxsZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90ZXN0L3VuaXQvY2xpZW50Um91dGVzL2dlbmVyYXRlV2FsbGV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsK0JBQStCO0FBRS9CLHVCQUFxQjtBQUNyQix3QkFBc0I7QUFDdEIsNkJBQTJCO0FBSTNCLDREQUFtRTtBQUVuRSxpQ0FBOEI7QUFDOUIsOENBQXlFO0FBRXpFLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLEVBQUU7SUFDL0IsRUFBRSxDQUFDLGtHQUFrRyxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ2hILE1BQU0sVUFBVSxHQUFHLEtBQUs7YUFDckIsSUFBSSxFQUFvQzthQUN4QyxRQUFRLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsMkJBQTJCLEVBQUUsRUFBUyxDQUFDLENBQUM7UUFDOUUsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDLGtCQUFPLEVBQUUsRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUN0RixNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsa0JBQWtCLENBQUMsbUJBQVEsRUFBRTtZQUNsRCxPQUFPLEVBQUUsS0FBSyxDQUFDLElBQUksRUFBZSxDQUFDLE9BQU8sQ0FBQyxXQUFrQixDQUFDO1NBQy9ELENBQUMsQ0FBQztRQUNILE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxhQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUksRUFBWSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEcsTUFBTSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7UUFDOUIsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDO1FBQ3BCLE1BQU0sVUFBVSxHQUFHO1lBQ2pCLEtBQUssRUFBRSxTQUFTO1lBQ2hCLE1BQU0sRUFBRTtnQkFDTixJQUFJO2FBQ0w7WUFDRCxLQUFLLEVBQUUsRUFBRTtZQUNULElBQUksRUFBRSxrQkFBa0I7U0FDSyxDQUFDO1FBQ2hDLE1BQU0sbUJBQW1CLEdBQUc7WUFDMUIsS0FBSyxFQUFFLFNBQVM7WUFDaEIsTUFBTSxFQUFFO2dCQUNOLElBQUk7YUFDTDtZQUNELEtBQUssRUFBRTtnQkFDTCxnQkFBZ0IsRUFBRSxJQUFJO2FBQ3ZCO1lBQ0QsSUFBSSxFQUFFLGtCQUFrQjtTQUNLLENBQUM7UUFFaEMsTUFBTSxJQUFBLHFDQUFzQixFQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLEVBQUUsTUFBTSxFQUFFLDJCQUEyQixFQUFFLENBQUMsQ0FBQztRQUN6RyxNQUFNLElBQUEscUNBQXNCLEVBQUMsbUJBQW1CLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxFQUFFLE1BQU0sRUFBRSwyQkFBMkIsRUFBRSxDQUFDLENBQUM7SUFDcEgsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMseUVBQXlFLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDdkYsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDLGtCQUFPLEVBQUU7WUFDcEQsY0FBYyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLFlBQVksRUFBRSxFQUFTO1NBQ2xFLENBQUMsQ0FBQztRQUNILE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxtQkFBUSxFQUFFO1lBQ2xELE9BQU8sRUFBRSxLQUFLLENBQUMsSUFBSSxFQUFlLENBQUMsT0FBTyxDQUFDLFdBQWtCLENBQUM7U0FDL0QsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDLGFBQUssRUFBRSxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxFQUFZLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN0RyxNQUFNLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUM5QixNQUFNLElBQUksR0FBRyxNQUFNLENBQUM7UUFDcEIsTUFBTSxHQUFHLEdBQUc7WUFDVixLQUFLLEVBQUUsU0FBUztZQUNoQixNQUFNLEVBQUU7Z0JBQ04sSUFBSTthQUNMO1lBQ0QsS0FBSyxFQUFFO2dCQUNMLGdCQUFnQixFQUFFLE9BQU87YUFDMUI7WUFDRCxJQUFJLEVBQUUsa0JBQWtCO1NBQ0ssQ0FBQztRQUVoQyxNQUFNLElBQUEscUNBQXNCLEVBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDekUsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHNpbm9uIGZyb20gJ3Npbm9uJztcblxuaW1wb3J0ICdzaG91bGQtaHR0cCc7XG5pbXBvcnQgJ3Nob3VsZC1zaW5vbic7XG5pbXBvcnQgJy4uLy4uL2xpYi9hc3NlcnRzJztcblxuaW1wb3J0ICogYXMgZXhwcmVzcyBmcm9tICdleHByZXNzJztcblxuaW1wb3J0IHsgaGFuZGxlVjJHZW5lcmF0ZVdhbGxldCB9IGZyb20gJy4uLy4uLy4uL3NyYy9jbGllbnRSb3V0ZXMnO1xuXG5pbXBvcnQgeyBCaXRHbyB9IGZyb20gJ2JpdGdvJztcbmltcG9ydCB7IEJhc2VDb2luLCBXYWxsZXRzLCBXYWxsZXRXaXRoS2V5Y2hhaW5zIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcblxuZGVzY3JpYmUoJ0dlbmVyYXRlIFdhbGxldCcsICgpID0+IHtcbiAgaXQoJ3Nob3VsZCByZXR1cm4gdGhlIGludGVybmFsIHdhbGxldCBvYmplY3QgYW5kIGtleWNoYWlucyBieSBkZWZhdWx0IG9yIGlmIGluY2x1ZGVLZXljaGFpbnMgaXMgdHJ1ZScsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCB3YWxsZXRTdHViID0gc2lub25cbiAgICAgIC5zdHViPFtdLCBQcm9taXNlPFdhbGxldFdpdGhLZXljaGFpbnM+PigpXG4gICAgICAucmVzb2x2ZXMoeyB3YWxsZXQ6IHsgdG9KU09OOiAoKSA9PiAnd2FsbGV0ZGF0YSB3aXRoIGtleWNoYWlucycgfSB9IGFzIGFueSk7XG4gICAgY29uc3Qgd2FsbGV0c1N0dWIgPSBzaW5vbi5jcmVhdGVTdHViSW5zdGFuY2UoV2FsbGV0cywgeyBnZW5lcmF0ZVdhbGxldDogd2FsbGV0U3R1YiB9KTtcbiAgICBjb25zdCBjb2luU3R1YiA9IHNpbm9uLmNyZWF0ZVN0dWJJbnN0YW5jZShCYXNlQ29pbiwge1xuICAgICAgd2FsbGV0czogc2lub24uc3R1YjxbXSwgV2FsbGV0cz4oKS5yZXR1cm5zKHdhbGxldHNTdHViIGFzIGFueSksXG4gICAgfSk7XG4gICAgY29uc3Qgc3R1YkJpdGdvID0gc2lub24uY3JlYXRlU3R1Ykluc3RhbmNlKEJpdEdvLCB7IGNvaW46IHNpbm9uLnN0dWI8W3N0cmluZ10+KCkucmV0dXJucyhjb2luU3R1YikgfSk7XG4gICAgY29uc3Qgd2FsbGV0R2VuZXJhdGVCb2R5ID0ge307XG4gICAgY29uc3QgY29pbiA9ICd0YnRjJztcbiAgICBjb25zdCByZXFEZWZhdWx0ID0ge1xuICAgICAgYml0Z286IHN0dWJCaXRnbyxcbiAgICAgIHBhcmFtczoge1xuICAgICAgICBjb2luLFxuICAgICAgfSxcbiAgICAgIHF1ZXJ5OiB7fSxcbiAgICAgIGJvZHk6IHdhbGxldEdlbmVyYXRlQm9keSxcbiAgICB9IGFzIHVua25vd24gYXMgZXhwcmVzcy5SZXF1ZXN0O1xuICAgIGNvbnN0IHJlcUluY2x1ZGVLZXljaGFpbnMgPSB7XG4gICAgICBiaXRnbzogc3R1YkJpdGdvLFxuICAgICAgcGFyYW1zOiB7XG4gICAgICAgIGNvaW4sXG4gICAgICB9LFxuICAgICAgcXVlcnk6IHtcbiAgICAgICAgaW5jbHVkZUtleWNoYWluczogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICBib2R5OiB3YWxsZXRHZW5lcmF0ZUJvZHksXG4gICAgfSBhcyB1bmtub3duIGFzIGV4cHJlc3MuUmVxdWVzdDtcblxuICAgIGF3YWl0IGhhbmRsZVYyR2VuZXJhdGVXYWxsZXQocmVxRGVmYXVsdCkuc2hvdWxkLmJlLnJlc29sdmVkV2l0aCh7IHdhbGxldDogJ3dhbGxldGRhdGEgd2l0aCBrZXljaGFpbnMnIH0pO1xuICAgIGF3YWl0IGhhbmRsZVYyR2VuZXJhdGVXYWxsZXQocmVxSW5jbHVkZUtleWNoYWlucykuc2hvdWxkLmJlLnJlc29sdmVkV2l0aCh7IHdhbGxldDogJ3dhbGxldGRhdGEgd2l0aCBrZXljaGFpbnMnIH0pO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIG9ubHkgcmV0dXJuIHdhbGxldCBkYXRhIGlmIGluY2x1ZGVLZXljaGFpbnMgcXVlcnkgcGFyYW0gaXMgZmFsc2UnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgd2FsbGV0c1N0dWIgPSBzaW5vbi5jcmVhdGVTdHViSW5zdGFuY2UoV2FsbGV0cywge1xuICAgICAgZ2VuZXJhdGVXYWxsZXQ6IHsgd2FsbGV0OiB7IHRvSlNPTjogKCkgPT4gJ3dhbGxldGRhdGEnIH0gfSBhcyBhbnksXG4gICAgfSk7XG4gICAgY29uc3QgY29pblN0dWIgPSBzaW5vbi5jcmVhdGVTdHViSW5zdGFuY2UoQmFzZUNvaW4sIHtcbiAgICAgIHdhbGxldHM6IHNpbm9uLnN0dWI8W10sIFdhbGxldHM+KCkucmV0dXJucyh3YWxsZXRzU3R1YiBhcyBhbnkpLFxuICAgIH0pO1xuICAgIGNvbnN0IHN0dWJCaXRnbyA9IHNpbm9uLmNyZWF0ZVN0dWJJbnN0YW5jZShCaXRHbywgeyBjb2luOiBzaW5vbi5zdHViPFtzdHJpbmddPigpLnJldHVybnMoY29pblN0dWIpIH0pO1xuICAgIGNvbnN0IHdhbGxldEdlbmVyYXRlQm9keSA9IHt9O1xuICAgIGNvbnN0IGNvaW4gPSAndGJ0Yyc7XG4gICAgY29uc3QgcmVxID0ge1xuICAgICAgYml0Z286IHN0dWJCaXRnbyxcbiAgICAgIHBhcmFtczoge1xuICAgICAgICBjb2luLFxuICAgICAgfSxcbiAgICAgIHF1ZXJ5OiB7XG4gICAgICAgIGluY2x1ZGVLZXljaGFpbnM6ICdmYWxzZScsXG4gICAgICB9LFxuICAgICAgYm9keTogd2FsbGV0R2VuZXJhdGVCb2R5LFxuICAgIH0gYXMgdW5rbm93biBhcyBleHByZXNzLlJlcXVlc3Q7XG5cbiAgICBhd2FpdCBoYW5kbGVWMkdlbmVyYXRlV2FsbGV0KHJlcSkuc2hvdWxkLmJlLnJlc29sdmVkV2l0aCgnd2FsbGV0ZGF0YScpO1xuICB9KTtcbn0pO1xuIl19

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


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