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Выполнить команду
Для локальной разработки. Не используйте в интернете!