UNPKG

bitgo

Version:
80 lines 10.5 kB
"use strict"; // // Tests that don't require an internet connection. // // Copyright 2018, BitGo, Inc. All Rights Reserved. // Object.defineProperty(exports, "__esModule", { value: true }); require("should"); const BitGoJS = require("../../src"); const sdk_test_1 = require("@bitgo/sdk-test"); const bitgo_1 = require("../../src/bitgo"); describe('Constructor', function () { it('arguments', function () { (() => { new BitGoJS.BitGo('invalid'); }).should.throw(/Must pass in parameters dictionary/); (() => { new BitGoJS.BitGo({ useProduction: 'invalid' }); }).should.throw(/invalid argument/); (() => { new BitGoJS.BitGo({ clientId: 'invalid' }); }).should.throw(/invalid argument/); (() => { new BitGoJS.BitGo({ clientSecret: 'invalid' }); }).should.throw(/invalid argument/); (() => { new BitGoJS.BitGo({ env: 'invalid' }); }).should.throw(/invalid environment/); (() => { new BitGoJS.BitGo({ env: 'testnet', useProduction: true }); }).should.throw(/cannot use useProduction/); }); it('methods', function () { const bitgo = sdk_test_1.TestBitGo.decorate(bitgo_1.BitGo); bitgo.initializeTestVars(); bitgo.should.have.property('version'); bitgo.should.have.property('market'); bitgo.should.have.property('authenticate'); bitgo.should.have.property('logout'); bitgo.should.have.property('me'); bitgo.should.have.property('encrypt'); bitgo.should.have.property('decrypt'); bitgo.should.have.property('_validate'); }); }); describe('BitGo environment', function () { let originalBitGoEnv; before(function () { // Save environment variable state, so that we can restore it after tests run. originalBitGoEnv = process.env.BITGO_ENV; }); it('should set environment', function () { // Default to test when no env specified. let bitgo = new BitGoJS.BitGo(); bitgo.env.should.equal('test'); // env passed as param. bitgo = new BitGoJS.BitGo({ env: 'prod' }); bitgo.env.should.equal('prod'); // env passed as environment variable. process.env.BITGO_ENV = 'prod'; bitgo = new BitGoJS.BitGo(); bitgo.env.should.equal('prod'); // Param overrides environment variable. bitgo = new BitGoJS.BitGo({ env: 'test' }); bitgo.env.should.equal('test'); delete process.env.BITGO_ENV; // useProduction param bitgo = new BitGoJS.BitGo({ useProduction: true }); bitgo.env.should.equal('prod'); }); after(function () { if (originalBitGoEnv) { process.env.BITGO_ENV = originalBitGoEnv; } else { delete process.env.BITGO_ENV; } }); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90ZXN0L3VuaXQvbG9jYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLEVBQUU7QUFDRixtREFBbUQ7QUFDbkQsRUFBRTtBQUNGLG9EQUFvRDtBQUNwRCxFQUFFOztBQUVGLGtCQUFnQjtBQUNoQixxQ0FBcUM7QUFDckMsOENBQTRDO0FBQzVDLDJDQUF3QztBQUV4QyxRQUFRLENBQUMsYUFBYSxFQUFFO0lBQ3RCLEVBQUUsQ0FBQyxXQUFXLEVBQUU7UUFDZCxDQUFDLEdBQUcsRUFBRTtZQUNKLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxTQUFnQixDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1FBQ3RELENBQUMsR0FBRyxFQUFFO1lBQ0osSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBUyxDQUFDLENBQUM7UUFDekQsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3BDLENBQUMsR0FBRyxFQUFFO1lBQ0osSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDN0MsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3BDLENBQUMsR0FBRyxFQUFFO1lBQ0osSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDakQsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3BDLENBQUMsR0FBRyxFQUFFO1lBQ0osSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsR0FBRyxFQUFFLFNBQVMs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RCxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDakMsQ0FBQyxDQUFDLENBQUM7SUFFSCxLQUFLLENBQUM7UUFDSixJQUFJLGdCQUFnQixFQUFFLENBQUM7WUFDckIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEdBQUcsZ0JBQWdCLENBQUM7UUFDM0MsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDO1FBQy9CLENBQUM7SUFDSCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy9cbi8vIFRlc3RzIHRoYXQgZG9uJ3QgcmVxdWlyZSBhbiBpbnRlcm5ldCBjb25uZWN0aW9uLlxuLy9cbi8vIENvcHlyaWdodCAyMDE4LCBCaXRHbywgSW5jLiAgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbi8vXG5cbmltcG9ydCAnc2hvdWxkJztcbmltcG9ydCAqIGFzIEJpdEdvSlMgZnJvbSAnLi4vLi4vc3JjJztcbmltcG9ydCB7IFRlc3RCaXRHbyB9IGZyb20gJ0BiaXRnby9zZGstdGVzdCc7XG5pbXBvcnQgeyBCaXRHbyB9IGZyb20gJy4uLy4uL3NyYy9iaXRnbyc7XG5cbmRlc2NyaWJlKCdDb25zdHJ1Y3RvcicsIGZ1bmN0aW9uICgpIHtcbiAgaXQoJ2FyZ3VtZW50cycsIGZ1bmN0aW9uICgpIHtcbiAgICAoKCkgPT4ge1xuICAgICAgbmV3IEJpdEdvSlMuQml0R28oJ2ludmFsaWQnIGFzIGFueSk7XG4gICAgfSkuc2hvdWxkLnRocm93KC9NdXN0IHBhc3MgaW4gcGFyYW1ldGVycyBkaWN0aW9uYXJ5Lyk7XG4gICAgKCgpID0+IHtcbiAgICAgIG5ldyBCaXRHb0pTLkJpdEdvKHsgdXNlUHJvZHVjdGlvbjogJ2ludmFsaWQnIH0gYXMgYW55KTtcbiAgICB9KS5zaG91bGQudGhyb3coL2ludmFsaWQgYXJndW1lbnQvKTtcbiAgICAoKCkgPT4ge1xuICAgICAgbmV3IEJpdEdvSlMuQml0R28oeyBjbGllbnRJZDogJ2ludmFsaWQnIH0pO1xuICAgIH0pLnNob3VsZC50aHJvdygvaW52YWxpZCBhcmd1bWVudC8pO1xuICAgICgoKSA9PiB7XG4gICAgICBuZXcgQml0R29KUy5CaXRHbyh7IGNsaWVudFNlY3JldDogJ2ludmFsaWQnIH0pO1xuICAgIH0pLnNob3VsZC50aHJvdygvaW52YWxpZCBhcmd1bWVudC8pO1xuICAgICgoKSA9PiB7XG4gICAgICBuZXcgQml0R29KUy5CaXRHbyh7IGVudjogJ2ludmFsaWQnIH0gYXMgYW55KTtcbiAgICB9KS5zaG91bGQudGhyb3coL2ludmFsaWQgZW52aXJvbm1lbnQvKTtcbiAgICAoKCkgPT4ge1xuICAgICAgbmV3IEJpdEdvSlMuQml0R28oeyBlbnY6ICd0ZXN0bmV0JywgdXNlUHJvZHVjdGlvbjogdHJ1ZSB9IGFzIGFueSk7XG4gICAgfSkuc2hvdWxkLnRocm93KC9jYW5ub3QgdXNlIHVzZVByb2R1Y3Rpb24vKTtcbiAgfSk7XG5cbiAgaXQoJ21ldGhvZHMnLCBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgYml0Z28gPSBUZXN0Qml0R28uZGVjb3JhdGUoQml0R28pO1xuICAgIGJpdGdvLmluaXRpYWxpemVUZXN0VmFycygpO1xuICAgIGJpdGdvLnNob3VsZC5oYXZlLnByb3BlcnR5KCd2ZXJzaW9uJyk7XG4gICAgYml0Z28uc2hvdWxkLmhhdmUucHJvcGVydHkoJ21hcmtldCcpO1xuICAgIGJpdGdvLnNob3VsZC5oYXZlLnByb3BlcnR5KCdhdXRoZW50aWNhdGUnKTtcbiAgICBiaXRnby5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnbG9nb3V0Jyk7XG4gICAgYml0Z28uc2hvdWxkLmhhdmUucHJvcGVydHkoJ21lJyk7XG4gICAgYml0Z28uc2hvdWxkLmhhdmUucHJvcGVydHkoJ2VuY3J5cHQnKTtcbiAgICBiaXRnby5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnZGVjcnlwdCcpO1xuICAgIGJpdGdvLnNob3VsZC5oYXZlLnByb3BlcnR5KCdfdmFsaWRhdGUnKTtcbiAgfSk7XG59KTtcblxuZGVzY3JpYmUoJ0JpdEdvIGVudmlyb25tZW50JywgZnVuY3Rpb24gKCkge1xuICBsZXQgb3JpZ2luYWxCaXRHb0VudjtcblxuICBiZWZvcmUoZnVuY3Rpb24gKCkge1xuICAgIC8vIFNhdmUgZW52aXJvbm1lbnQgdmFyaWFibGUgc3RhdGUsIHNvIHRoYXQgd2UgY2FuIHJlc3RvcmUgaXQgYWZ0ZXIgdGVzdHMgcnVuLlxuICAgIG9yaWdpbmFsQml0R29FbnYgPSBwcm9jZXNzLmVudi5CSVRHT19FTlY7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgc2V0IGVudmlyb25tZW50JywgZnVuY3Rpb24gKCkge1xuICAgIC8vIERlZmF1bHQgdG8gdGVzdCB3aGVuIG5vIGVudiBzcGVjaWZpZWQuXG4gICAgbGV0IGJpdGdvID0gbmV3IEJpdEdvSlMuQml0R28oKTtcbiAgICBiaXRnby5lbnYuc2hvdWxkLmVxdWFsKCd0ZXN0Jyk7XG5cbiAgICAvLyBlbnYgcGFzc2VkIGFzIHBhcmFtLlxuICAgIGJpdGdvID0gbmV3IEJpdEdvSlMuQml0R28oeyBlbnY6ICdwcm9kJyB9KTtcbiAgICBiaXRnby5lbnYuc2hvdWxkLmVxdWFsKCdwcm9kJyk7XG5cbiAgICAvLyBlbnYgcGFzc2VkIGFzIGVudmlyb25tZW50IHZhcmlhYmxlLlxuICAgIHByb2Nlc3MuZW52LkJJVEdPX0VOViA9ICdwcm9kJztcbiAgICBiaXRnbyA9IG5ldyBCaXRHb0pTLkJpdEdvKCk7XG4gICAgYml0Z28uZW52LnNob3VsZC5lcXVhbCgncHJvZCcpO1xuXG4gICAgLy8gUGFyYW0gb3ZlcnJpZGVzIGVudmlyb25tZW50IHZhcmlhYmxlLlxuICAgIGJpdGdvID0gbmV3IEJpdEdvSlMuQml0R28oeyBlbnY6ICd0ZXN0JyB9KTtcbiAgICBiaXRnby5lbnYuc2hvdWxkLmVxdWFsKCd0ZXN0Jyk7XG5cbiAgICBkZWxldGUgcHJvY2Vzcy5lbnYuQklUR09fRU5WO1xuXG4gICAgLy8gdXNlUHJvZHVjdGlvbiBwYXJhbVxuICAgIGJpdGdvID0gbmV3IEJpdEdvSlMuQml0R28oeyB1c2VQcm9kdWN0aW9uOiB0cnVlIH0pO1xuICAgIGJpdGdvLmVudi5zaG91bGQuZXF1YWwoJ3Byb2QnKTtcbiAgfSk7XG5cbiAgYWZ0ZXIoZnVuY3Rpb24gKCkge1xuICAgIGlmIChvcmlnaW5hbEJpdEdvRW52KSB7XG4gICAgICBwcm9jZXNzLmVudi5CSVRHT19FTlYgPSBvcmlnaW5hbEJpdEdvRW52O1xuICAgIH0gZWxzZSB7XG4gICAgICBkZWxldGUgcHJvY2Vzcy5lbnYuQklUR09fRU5WO1xuICAgIH1cbiAgfSk7XG59KTtcbiJdfQ==