@bitgo/sdk-coin-coreum 21.5.2 → 21.5.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/test/resources/coreum.d.ts +56 -0
- package/dist/test/resources/coreum.d.ts.map +1 -0
- package/dist/test/resources/coreum.js +45 -0
- package/dist/test/resources/tcoreum.d.ts +206 -0
- package/dist/test/resources/tcoreum.d.ts.map +1 -0
- package/dist/test/resources/tcoreum.js +353 -0
- package/dist/test/unit/coreum.d.ts +2 -0
- package/dist/test/unit/coreum.d.ts.map +1 -0
- package/dist/test/unit/coreum.js +471 -0
- package/dist/test/unit/keyPair.d.ts +2 -0
- package/dist/test/unit/keyPair.d.ts.map +1 -0
- package/dist/test/unit/keyPair.js +94 -0
- package/dist/test/unit/transaction.d.ts +2 -0
- package/dist/test/unit/transaction.d.ts.map +1 -0
- package/dist/test/unit/transaction.js +220 -0
- package/dist/test/unit/transactionBuilder/StakingActivateBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/StakingActivateBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/StakingActivateBuilder.js +154 -0
- package/dist/test/unit/transactionBuilder/StakingDeactivateBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/StakingDeactivateBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/StakingDeactivateBuilder.js +153 -0
- package/dist/test/unit/transactionBuilder/StakingWithdrawRewardsBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/StakingWithdrawRewardsBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/StakingWithdrawRewardsBuilder.js +154 -0
- package/dist/test/unit/transactionBuilder/transactionBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/transactionBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/transactionBuilder.js +112 -0
- package/dist/test/unit/transactionBuilder/transferBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/transferBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/transferBuilder.js +189 -0
- package/dist/test/unit/utils.d.ts +2 -0
- package/dist/test/unit/utils.d.ts.map +1 -0
- package/dist/test/unit/utils.js +51 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +12 -9
- package/.eslintignore +0 -5
- package/.mocharc.yml +0 -8
- package/CHANGELOG.md +0 -771
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const sdk_core_1 = require("@bitgo/sdk-core");
|
|
7
|
+
const assert_1 = __importDefault(require("assert"));
|
|
8
|
+
const should_1 = __importDefault(require("should"));
|
|
9
|
+
const src_1 = require("../../src");
|
|
10
|
+
const coreum_1 = require("../resources/coreum");
|
|
11
|
+
describe('Coreum Key Pair', () => {
|
|
12
|
+
describe('should create a valid KeyPair', () => {
|
|
13
|
+
it('from an empty value', () => {
|
|
14
|
+
const keyPairObj = new src_1.KeyPair();
|
|
15
|
+
const keys = keyPairObj.getKeys();
|
|
16
|
+
should_1.default.exists(keys.prv);
|
|
17
|
+
should_1.default.exists(keys.pub);
|
|
18
|
+
should_1.default.equal(keys.prv?.length, 64);
|
|
19
|
+
should_1.default.equal(keys.pub.length, 66);
|
|
20
|
+
const extendedKeys = keyPairObj.getExtendedKeys();
|
|
21
|
+
should_1.default.exists(extendedKeys.xprv);
|
|
22
|
+
should_1.default.exists(extendedKeys.xpub);
|
|
23
|
+
});
|
|
24
|
+
it('from a private key', () => {
|
|
25
|
+
const privateKey = coreum_1.TEST_ACCOUNT.privateKey;
|
|
26
|
+
const keyPairObj = new src_1.KeyPair({ prv: privateKey });
|
|
27
|
+
const keys = keyPairObj.getKeys();
|
|
28
|
+
should_1.default.exists(keys.prv);
|
|
29
|
+
should_1.default.exists(keys.pub);
|
|
30
|
+
should_1.default.equal(keys.prv, coreum_1.TEST_ACCOUNT.privateKey);
|
|
31
|
+
should_1.default.equal(keys.pub, coreum_1.TEST_ACCOUNT.compressedPublicKey);
|
|
32
|
+
should_1.default.equal(keyPairObj.getAddress(), coreum_1.TEST_ACCOUNT.pubAddress);
|
|
33
|
+
should_1.default.equal(keyPairObj.getAddress(sdk_core_1.AddressFormat.testnet), coreum_1.TEST_ACCOUNT.testnetPubAddress);
|
|
34
|
+
assert_1.default.throws(() => keyPairObj.getExtendedKeys());
|
|
35
|
+
});
|
|
36
|
+
it('from a compressed public key', () => {
|
|
37
|
+
const publicKey = coreum_1.TEST_ACCOUNT.compressedPublicKey;
|
|
38
|
+
const keyPairObj = new src_1.KeyPair({ pub: publicKey });
|
|
39
|
+
const keys = keyPairObj.getKeys();
|
|
40
|
+
should_1.default.not.exist(keys.prv);
|
|
41
|
+
should_1.default.exists(keys.pub);
|
|
42
|
+
should_1.default.equal(keys.pub, coreum_1.TEST_ACCOUNT.compressedPublicKey);
|
|
43
|
+
assert_1.default.throws(() => keyPairObj.getExtendedKeys());
|
|
44
|
+
});
|
|
45
|
+
it('from an uncompressed public key', () => {
|
|
46
|
+
// Input is uncompressed, but we output the compressed key to keep
|
|
47
|
+
// parity with coreum network expectations.
|
|
48
|
+
const publicKey = coreum_1.TEST_ACCOUNT.uncompressedPublicKey;
|
|
49
|
+
const keyPairObj = new src_1.KeyPair({ pub: publicKey });
|
|
50
|
+
const keys = keyPairObj.getKeys();
|
|
51
|
+
should_1.default.not.exist(keys.prv);
|
|
52
|
+
should_1.default.exists(keys.pub);
|
|
53
|
+
should_1.default.notEqual(keys.pub, publicKey);
|
|
54
|
+
should_1.default.equal(keys.pub, coreum_1.TEST_ACCOUNT.compressedPublicKey);
|
|
55
|
+
assert_1.default.throws(() => keyPairObj.getExtendedKeys());
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
describe('should fail to create a KeyPair', () => {
|
|
59
|
+
it('from an invalid privateKey', () => {
|
|
60
|
+
assert_1.default.throws(() => new src_1.KeyPair({ prv: '' }), (e) => e.message === 'Unsupported private key');
|
|
61
|
+
});
|
|
62
|
+
it('from an invalid publicKey', () => {
|
|
63
|
+
assert_1.default.throws(() => new src_1.KeyPair({ pub: '' }), (e) => e.message.startsWith('Unsupported public key'));
|
|
64
|
+
});
|
|
65
|
+
it('from an undefined seed', () => {
|
|
66
|
+
const undefinedBuffer = undefined;
|
|
67
|
+
assert_1.default.throws(() => new src_1.KeyPair({ seed: undefinedBuffer }), (e) => e.message.startsWith('Invalid key pair options'));
|
|
68
|
+
});
|
|
69
|
+
it('from an undefined private key', () => {
|
|
70
|
+
const undefinedStr = undefined;
|
|
71
|
+
assert_1.default.throws(() => new src_1.KeyPair({ prv: undefinedStr }), (e) => e.message.startsWith('Invalid key pair options'));
|
|
72
|
+
});
|
|
73
|
+
it('from an undefined public key', () => {
|
|
74
|
+
const undefinedStr = undefined;
|
|
75
|
+
assert_1.default.throws(() => new src_1.KeyPair({ pub: undefinedStr }), (e) => e.message.startsWith('Invalid key pair options'));
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
describe('should get unique address', () => {
|
|
79
|
+
it('from a private key', () => {
|
|
80
|
+
const keyPair = new src_1.KeyPair({ prv: coreum_1.TEST_ACCOUNT.privateKey });
|
|
81
|
+
should_1.default.equal(keyPair.getAddress(), coreum_1.TEST_ACCOUNT.pubAddress);
|
|
82
|
+
});
|
|
83
|
+
it('from a compressed public key', () => {
|
|
84
|
+
const keyPair = new src_1.KeyPair({ pub: coreum_1.TEST_ACCOUNT.compressedPublicKey });
|
|
85
|
+
should_1.default.equal(keyPair.getAddress(), coreum_1.TEST_ACCOUNT.pubAddress);
|
|
86
|
+
});
|
|
87
|
+
it('should be different for different public keys', () => {
|
|
88
|
+
const keyPairOne = new src_1.KeyPair({ pub: coreum_1.TEST_ACCOUNT.compressedPublicKey });
|
|
89
|
+
const keyPairTwo = new src_1.KeyPair({ pub: coreum_1.TEST_ACCOUNT.compressedPublicKeyTwo });
|
|
90
|
+
should_1.default.notEqual(keyPairOne.getAddress(), keyPairTwo.getAddress());
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
});
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5UGFpci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Rlc3QvdW5pdC9rZXlQYWlyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsOENBQWdEO0FBQ2hELG9EQUE0QjtBQUM1QixvREFBNEI7QUFDNUIsbUNBQW9DO0FBQ3BDLGdEQUFtRDtBQUVuRCxRQUFRLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFO0lBQy9CLFFBQVEsQ0FBQywrQkFBK0IsRUFBRSxHQUFHLEVBQUU7UUFDN0MsRUFBRSxDQUFDLHFCQUFxQixFQUFFLEdBQUcsRUFBRTtZQUM3QixNQUFNLFVBQVUsR0FBRyxJQUFJLGFBQU8sRUFBRSxDQUFDO1lBQ2pDLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNsQyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDeEIsZ0JBQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3hCLGdCQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ25DLGdCQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBRWxDLE1BQU0sWUFBWSxHQUFHLFVBQVUsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNsRCxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDakMsZ0JBQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLENBQUMsQ0FBQyxDQUFDO1FBRUgsRUFBRSxDQUFDLG9CQUFvQixFQUFFLEdBQUcsRUFBRTtZQUM1QixNQUFNLFVBQVUsR0FBRyxxQkFBWSxDQUFDLFVBQVUsQ0FBQztZQUMzQyxNQUFNLFVBQVUs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Q0FBQyxFQUFFLEdBQUcsRUFBRSxxQkFBWSxDQUFDLHNCQUFzQixFQUFFLENBQUMsQ0FBQztZQUM3RSxnQkFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLEVBQUUsVUFBVSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDcEUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWRkcmVzc0Zvcm1hdCB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgc2hvdWxkIGZyb20gJ3Nob3VsZCc7XG5pbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi4vLi4vc3JjJztcbmltcG9ydCB7IFRFU1RfQUNDT1VOVCB9IGZyb20gJy4uL3Jlc291cmNlcy9jb3JldW0nO1xuXG5kZXNjcmliZSgnQ29yZXVtIEtleSBQYWlyJywgKCkgPT4ge1xuICBkZXNjcmliZSgnc2hvdWxkIGNyZWF0ZSBhIHZhbGlkIEtleVBhaXInLCAoKSA9PiB7XG4gICAgaXQoJ2Zyb20gYW4gZW1wdHkgdmFsdWUnLCAoKSA9PiB7XG4gICAgICBjb25zdCBrZXlQYWlyT2JqID0gbmV3IEtleVBhaXIoKTtcbiAgICAgIGNvbnN0IGtleXMgPSBrZXlQYWlyT2JqLmdldEtleXMoKTtcbiAgICAgIHNob3VsZC5leGlzdHMoa2V5cy5wcnYpO1xuICAgICAgc2hvdWxkLmV4aXN0cyhrZXlzLnB1Yik7XG4gICAgICBzaG91bGQuZXF1YWwoa2V5cy5wcnY/Lmxlbmd0aCwgNjQpO1xuICAgICAgc2hvdWxkLmVxdWFsKGtleXMucHViLmxlbmd0aCwgNjYpO1xuXG4gICAgICBjb25zdCBleHRlbmRlZEtleXMgPSBrZXlQYWlyT2JqLmdldEV4dGVuZGVkS2V5cygpO1xuICAgICAgc2hvdWxkLmV4aXN0cyhleHRlbmRlZEtleXMueHBydik7XG4gICAgICBzaG91bGQuZXhpc3RzKGV4dGVuZGVkS2V5cy54cHViKTtcbiAgICB9KTtcblxuICAgIGl0KCdmcm9tIGEgcHJpdmF0ZSBrZXknLCAoKSA9PiB7XG4gICAgICBjb25zdCBwcml2YXRlS2V5ID0gVEVTVF9BQ0NPVU5ULnByaXZhdGVLZXk7XG4gICAgICBjb25zdCBrZXlQYWlyT2JqID0gbmV3IEtleVBhaXIoeyBwcnY6IHByaXZhdGVLZXkgfSk7XG4gICAgICBjb25zdCBrZXlzID0ga2V5UGFpck9iai5nZXRLZXlzKCk7XG4gICAgICBzaG91bGQuZXhpc3RzKGtleXMucHJ2KTtcbiAgICAgIHNob3VsZC5leGlzdHMoa2V5cy5wdWIpO1xuICAgICAgc2hvdWxkLmVxdWFsKGtleXMucHJ2LCBURVNUX0FDQ09VTlQucHJpdmF0ZUtleSk7XG4gICAgICBzaG91bGQuZXF1YWwoa2V5cy5wdWIsIFRFU1RfQUNDT1VOVC5jb21wcmVzc2VkUHVibGljS2V5KTtcbiAgICAgIHNob3VsZC5lcXVhbChrZXlQYWlyT2JqLmdldEFkZHJlc3MoKSwgVEVTVF9BQ0NPVU5ULnB1YkFkZHJlc3MpO1xuICAgICAgc2hvdWxkLmVxdWFsKGtleVBhaXJPYmouZ2V0QWRkcmVzcyhBZGRyZXNzRm9ybWF0LnRlc3RuZXQpLCBURVNUX0FDQ09VTlQudGVzdG5ldFB1YkFkZHJlc3MpO1xuXG4gICAgICBhc3NlcnQudGhyb3dzKCgpID0+IGtleVBhaXJPYmouZ2V0RXh0ZW5kZWRLZXlzKCkpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2Zyb20gYSBjb21wcmVzc2VkIHB1YmxpYyBrZXknLCAoKSA9PiB7XG4gICAgICBjb25zdCBwdWJsaWNLZXkgPSBURVNUX0FDQ09VTlQuY29tcHJlc3NlZFB1YmxpY0tleTtcbiAgICAgIGNvbnN0IGtleVBhaXJPYmogPSBuZXcgS2V5UGFpcih7IHB1YjogcHVibGljS2V5IH0pO1xuICAgICAgY29uc3Qga2V5cyA9IGtleVBhaXJPYmouZ2V0S2V5cygpO1xuICAgICAgc2hvdWxkLm5vdC5leGlzdChrZXlzLnBydik7XG4gICAgICBzaG91bGQuZXhpc3RzKGtleXMucHViKTtcbiAgICAgIHNob3VsZC5lcXVhbChrZXlzLnB1YiwgVEVTVF9BQ0NPVU5ULmNvbXByZXNzZWRQdWJsaWNLZXkpO1xuXG4gICAgICBhc3NlcnQudGhyb3dzKCgpID0+IGtleVBhaXJPYmouZ2V0RXh0ZW5kZWRLZXlzKCkpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2Zyb20gYW4gdW5jb21wcmVzc2VkIHB1YmxpYyBrZXknLCAoKSA9PiB7XG4gICAgICAvLyBJbnB1dCBpcyB1bmNvbXByZXNzZWQsIGJ1dCB3ZSBvdXRwdXQgdGhlIGNvbXByZXNzZWQga2V5IHRvIGtlZXBcbiAgICAgIC8vIHBhcml0eSB3aXRoIGNvcmV1bSBuZXR3b3JrIGV4cGVjdGF0aW9ucy5cbiAgICAgIGNvbnN0IHB1YmxpY0tleSA9IFRFU1RfQUNDT1VOVC51bmNvbXByZXNzZWRQdWJsaWNLZXk7XG4gICAgICBjb25zdCBrZXlQYWlyT2JqID0gbmV3IEtleVBhaXIoeyBwdWI6IHB1YmxpY0tleSB9KTtcbiAgICAgIGNvbnN0IGtleXMgPSBrZXlQYWlyT2JqLmdldEtleXMoKTtcbiAgICAgIHNob3VsZC5ub3QuZXhpc3Qoa2V5cy5wcnYpO1xuICAgICAgc2hvdWxkLmV4aXN0cyhrZXlzLnB1Yik7XG4gICAgICBzaG91bGQubm90RXF1YWwoa2V5cy5wdWIsIHB1YmxpY0tleSk7XG4gICAgICBzaG91bGQuZXF1YWwoa2V5cy5wdWIsIFRFU1RfQUNDT1VOVC5jb21wcmVzc2VkUHVibGljS2V5KTtcblxuICAgICAgYXNzZXJ0LnRocm93cygoKSA9PiBrZXlQYWlyT2JqLmdldEV4dGVuZGVkS2V5cygpKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3Nob3VsZCBmYWlsIHRvIGNyZWF0ZSBhIEtleVBhaXInLCAoKSA9PiB7XG4gICAgaXQoJ2Zyb20gYW4gaW52YWxpZCBwcml2YXRlS2V5JywgKCkgPT4ge1xuICAgICAgYXNzZXJ0LnRocm93cyhcbiAgICAgICAgKCkgPT4gbmV3IEtleVBhaXIoeyBwcnY6ICcnIH0pLFxuICAgICAgICAoZTogYW55KSA9PiBlLm1lc3NhZ2UgPT09ICdVbnN1cHBvcnRlZCBwcml2YXRlIGtleSdcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICBpdCgnZnJvbSBhbiBpbnZhbGlkIHB1YmxpY0tleScsICgpID0+IHtcbiAgICAgIGFzc2VydC50aHJvd3MoXG4gICAgICAgICgpID0+IG5ldyBLZXlQYWlyKHsgcHViOiAnJyB9KSxcbiAgICAgICAgKGU6IGFueSkgPT4gZS5tZXNzYWdlLnN0YXJ0c1dpdGgoJ1Vuc3VwcG9ydGVkIHB1YmxpYyBrZXknKVxuICAgICAgKTtcbiAgICB9KTtcblxuICAgIGl0KCdmcm9tIGFuIHVuZGVmaW5lZCBzZWVkJywgKCkgPT4ge1xuICAgICAgY29uc3QgdW5kZWZpbmVkQnVmZmVyID0gdW5kZWZpbmVkIGFzIHVua25vd24gYXMgQnVmZmVyO1xuICAgICAgYXNzZXJ0LnRocm93cyhcbiAgICAgICAgKCkgPT4gbmV3IEtleVBhaXIoeyBzZWVkOiB1bmRlZmluZWRCdWZmZXIgfSksXG4gICAgICAgIChlOiBhbnkpID0+IGUubWVzc2FnZS5zdGFydHNXaXRoKCdJbnZhbGlkIGtleSBwYWlyIG9wdGlvbnMnKVxuICAgICAgKTtcbiAgICB9KTtcblxuICAgIGl0KCdmcm9tIGFuIHVuZGVmaW5lZCBwcml2YXRlIGtleScsICgpID0+IHtcbiAgICAgIGNvbnN0IHVuZGVmaW5lZFN0cjogc3RyaW5nID0gdW5kZWZpbmVkIGFzIHVua25vd24gYXMgc3RyaW5nO1xuICAgICAgYXNzZXJ0LnRocm93cyhcbiAgICAgICAgKCkgPT4gbmV3IEtleVBhaXIoeyBwcnY6IHVuZGVmaW5lZFN0ciB9KSxcbiAgICAgICAgKGU6IGFueSkgPT4gZS5tZXNzYWdlLnN0YXJ0c1dpdGgoJ0ludmFsaWQga2V5IHBhaXIgb3B0aW9ucycpXG4gICAgICApO1xuICAgIH0pO1xuXG4gICAgaXQoJ2Zyb20gYW4gdW5kZWZpbmVkIHB1YmxpYyBrZXknLCAoKSA9PiB7XG4gICAgICBjb25zdCB1bmRlZmluZWRTdHI6IHN0cmluZyA9IHVuZGVmaW5lZCBhcyB1bmtub3duIGFzIHN0cmluZztcbiAgICAgIGFzc2VydC50aHJvd3MoXG4gICAgICAgICgpID0+IG5ldyBLZXlQYWlyKHsgcHViOiB1bmRlZmluZWRTdHIgfSksXG4gICAgICAgIChlOiBhbnkpID0+IGUubWVzc2FnZS5zdGFydHNXaXRoKCdJbnZhbGlkIGtleSBwYWlyIG9wdGlvbnMnKVxuICAgICAgKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3Nob3VsZCBnZXQgdW5pcXVlIGFkZHJlc3MnLCAoKSA9PiB7XG4gICAgaXQoJ2Zyb20gYSBwcml2YXRlIGtleScsICgpID0+IHtcbiAgICAgIGNvbnN0IGtleVBhaXIgPSBuZXcgS2V5UGFpcih7IHBydjogVEVTVF9BQ0NPVU5ULnByaXZhdGVLZXkgfSk7XG4gICAgICBzaG91bGQuZXF1YWwoa2V5UGFpci5nZXRBZGRyZXNzKCksIFRFU1RfQUNDT1VOVC5wdWJBZGRyZXNzKTtcbiAgICB9KTtcblxuICAgIGl0KCdmcm9tIGEgY29tcHJlc3NlZCBwdWJsaWMga2V5JywgKCkgPT4ge1xuICAgICAgY29uc3Qga2V5UGFpciA9IG5ldyBLZXlQYWlyKHsgcHViOiBURVNUX0FDQ09VTlQuY29tcHJlc3NlZFB1YmxpY0tleSB9KTtcbiAgICAgIHNob3VsZC5lcXVhbChrZXlQYWlyLmdldEFkZHJlc3MoKSwgVEVTVF9BQ0NPVU5ULnB1YkFkZHJlc3MpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBiZSBkaWZmZXJlbnQgZm9yIGRpZmZlcmVudCBwdWJsaWMga2V5cycsICgpID0+IHtcbiAgICAgIGNvbnN0IGtleVBhaXJPbmUgPSBuZXcgS2V5UGFpcih7IHB1YjogVEVTVF9BQ0NPVU5ULmNvbXByZXNzZWRQdWJsaWNLZXkgfSk7XG4gICAgICBjb25zdCBrZXlQYWlyVHdvID0gbmV3IEtleVBhaXIoeyBwdWI6IFRFU1RfQUNDT1VOVC5jb21wcmVzc2VkUHVibGljS2V5VHdvIH0pO1xuICAgICAgc2hvdWxkLm5vdEVxdWFsKGtleVBhaXJPbmUuZ2V0QWRkcmVzcygpLCBrZXlQYWlyVHdvLmdldEFkZHJlc3MoKSk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../test/unit/transaction.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
const sdk_core_1 = require("@bitgo/sdk-core");
|
|
40
|
+
const statics_1 = require("@bitgo/statics");
|
|
41
|
+
const encoding_1 = require("@cosmjs/encoding");
|
|
42
|
+
const should_1 = __importDefault(require("should"));
|
|
43
|
+
const abstract_cosmos_1 = require("@bitgo/abstract-cosmos");
|
|
44
|
+
const utils_1 = require("../../src/lib/utils");
|
|
45
|
+
const testData = __importStar(require("../resources/tcoreum"));
|
|
46
|
+
describe('Coreum Transaction', () => {
|
|
47
|
+
let tx;
|
|
48
|
+
const config = statics_1.coins.get('tcoreum');
|
|
49
|
+
const utils = new utils_1.CoreumUtils(config.network.type);
|
|
50
|
+
beforeEach(() => {
|
|
51
|
+
tx = new abstract_cosmos_1.CosmosTransaction(config, utils);
|
|
52
|
+
});
|
|
53
|
+
describe('Empty transaction', () => {
|
|
54
|
+
it('should throw empty transaction', function () {
|
|
55
|
+
should_1.default.throws(() => tx.toBroadcastFormat(), 'Empty transaction');
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
describe('From raw transaction', () => {
|
|
59
|
+
it('should build a transfer from raw signed base64', function () {
|
|
60
|
+
tx.enrichTransactionDetailsFromRawTransaction(testData.TEST_SEND_TX.signedTxBase64);
|
|
61
|
+
const json = tx.toJson();
|
|
62
|
+
should_1.default.equal(json.sequence, testData.TEST_SEND_TX.sequence);
|
|
63
|
+
should_1.default.deepEqual(json.gasBudget, testData.TEST_SEND_TX.gasBudget);
|
|
64
|
+
should_1.default.equal(json.publicKey, (0, sdk_core_1.toHex)((0, encoding_1.fromBase64)(testData.TEST_SEND_TX.pubKey)));
|
|
65
|
+
should_1.default.equal(json.sendMessages[0].value.toAddress, testData.TEST_SEND_TX.sendMessage.value.toAddress);
|
|
66
|
+
should_1.default.deepEqual(json.sendMessages[0].value.amount, testData.TEST_SEND_TX.sendMessage.value.amount);
|
|
67
|
+
should_1.default.equal(Buffer.from(json.signature).toString('base64'), testData.TEST_SEND_TX.signature);
|
|
68
|
+
should_1.default.equal(tx.type, sdk_core_1.TransactionType.Send);
|
|
69
|
+
tx.loadInputsAndOutputs();
|
|
70
|
+
should_1.default.deepEqual(tx.inputs, [
|
|
71
|
+
{
|
|
72
|
+
address: testData.TEST_SEND_TX.sender,
|
|
73
|
+
value: testData.TEST_SEND_TX.sendMessage.value.amount[0].amount,
|
|
74
|
+
coin: 'tcoreum',
|
|
75
|
+
},
|
|
76
|
+
]);
|
|
77
|
+
should_1.default.deepEqual(tx.outputs, [
|
|
78
|
+
{
|
|
79
|
+
address: testData.TEST_SEND_TX.sendMessage.value.toAddress,
|
|
80
|
+
value: testData.TEST_SEND_TX.sendMessage.value.amount[0].amount,
|
|
81
|
+
coin: 'tcoreum',
|
|
82
|
+
},
|
|
83
|
+
]);
|
|
84
|
+
});
|
|
85
|
+
it('should build a transfer from raw signed hex', function () {
|
|
86
|
+
tx.enrichTransactionDetailsFromRawTransaction((0, sdk_core_1.toHex)((0, encoding_1.fromBase64)(testData.TEST_SEND_TX.signedTxBase64)));
|
|
87
|
+
const json = tx.toJson();
|
|
88
|
+
should_1.default.equal(json.sequence, testData.TEST_SEND_TX.sequence);
|
|
89
|
+
should_1.default.deepEqual(json.gasBudget, testData.TEST_SEND_TX.gasBudget);
|
|
90
|
+
should_1.default.equal(json.publicKey, (0, sdk_core_1.toHex)((0, encoding_1.fromBase64)(testData.TEST_SEND_TX.pubKey)));
|
|
91
|
+
should_1.default.equal(json.sendMessages[0].value.toAddress, testData.TEST_SEND_TX.sendMessage.value.toAddress);
|
|
92
|
+
should_1.default.deepEqual(json.sendMessages[0].value.amount, testData.TEST_SEND_TX.sendMessage.value.amount);
|
|
93
|
+
should_1.default.equal(Buffer.from(json.signature).toString('base64'), testData.TEST_SEND_TX.signature);
|
|
94
|
+
should_1.default.equal(tx.type, sdk_core_1.TransactionType.Send);
|
|
95
|
+
tx.loadInputsAndOutputs();
|
|
96
|
+
should_1.default.deepEqual(tx.inputs, [
|
|
97
|
+
{
|
|
98
|
+
address: testData.TEST_SEND_TX.sender,
|
|
99
|
+
value: testData.TEST_SEND_TX.sendMessage.value.amount[0].amount,
|
|
100
|
+
coin: 'tcoreum',
|
|
101
|
+
},
|
|
102
|
+
]);
|
|
103
|
+
should_1.default.deepEqual(tx.outputs, [
|
|
104
|
+
{
|
|
105
|
+
address: testData.TEST_SEND_TX.sendMessage.value.toAddress,
|
|
106
|
+
value: testData.TEST_SEND_TX.sendMessage.value.amount[0].amount,
|
|
107
|
+
coin: 'tcoreum',
|
|
108
|
+
},
|
|
109
|
+
]);
|
|
110
|
+
});
|
|
111
|
+
it('should build a delegate txn from raw signed base64', function () {
|
|
112
|
+
tx.enrichTransactionDetailsFromRawTransaction(testData.TEST_DELEGATE_TX.signedTxBase64);
|
|
113
|
+
const json = tx.toJson();
|
|
114
|
+
should_1.default.equal(json.sequence, testData.TEST_DELEGATE_TX.sequence);
|
|
115
|
+
should_1.default.deepEqual(json.gasBudget, testData.TEST_DELEGATE_TX.gasBudget);
|
|
116
|
+
should_1.default.equal(Buffer.from(json.publicKey, 'hex').toString('base64'), testData.TEST_DELEGATE_TX.pubKey);
|
|
117
|
+
should_1.default.equal(json.sendMessages[0].value.validatorAddress, testData.TEST_DELEGATE_TX.sendMessage.value.validatorAddress);
|
|
118
|
+
should_1.default.deepEqual(json.sendMessages[0].value.amount, testData.TEST_DELEGATE_TX.sendMessage.value.amount);
|
|
119
|
+
should_1.default.equal(Buffer.from(json.signature).toString('base64'), testData.TEST_DELEGATE_TX.signature);
|
|
120
|
+
should_1.default.equal(tx.type, sdk_core_1.TransactionType.StakingActivate);
|
|
121
|
+
tx.loadInputsAndOutputs();
|
|
122
|
+
should_1.default.deepEqual(tx.inputs, [
|
|
123
|
+
{
|
|
124
|
+
address: testData.TEST_DELEGATE_TX.delegator,
|
|
125
|
+
value: testData.TEST_DELEGATE_TX.sendMessage.value.amount.amount,
|
|
126
|
+
coin: 'tcoreum',
|
|
127
|
+
},
|
|
128
|
+
]);
|
|
129
|
+
should_1.default.deepEqual(tx.outputs, [
|
|
130
|
+
{
|
|
131
|
+
address: testData.TEST_DELEGATE_TX.validator,
|
|
132
|
+
value: testData.TEST_DELEGATE_TX.sendMessage.value.amount.amount,
|
|
133
|
+
coin: 'tcoreum',
|
|
134
|
+
},
|
|
135
|
+
]);
|
|
136
|
+
});
|
|
137
|
+
it('should build a undelegate txn from raw signed base64', function () {
|
|
138
|
+
tx.enrichTransactionDetailsFromRawTransaction(testData.TEST_UNDELEGATE_TX.signedTxBase64);
|
|
139
|
+
const json = tx.toJson();
|
|
140
|
+
should_1.default.equal(json.sequence, testData.TEST_UNDELEGATE_TX.sequence);
|
|
141
|
+
should_1.default.deepEqual(json.gasBudget, testData.TEST_UNDELEGATE_TX.gasBudget);
|
|
142
|
+
should_1.default.equal(Buffer.from(json.publicKey, 'hex').toString('base64'), testData.TEST_UNDELEGATE_TX.pubKey);
|
|
143
|
+
should_1.default.equal(json.sendMessages[0].value.validatorAddress, testData.TEST_UNDELEGATE_TX.sendMessage.value.validatorAddress);
|
|
144
|
+
should_1.default.deepEqual(json.sendMessages[0].value.amount, testData.TEST_UNDELEGATE_TX.sendMessage.value.amount);
|
|
145
|
+
should_1.default.equal(Buffer.from(json.signature).toString('base64'), testData.TEST_UNDELEGATE_TX.signature);
|
|
146
|
+
should_1.default.equal(tx.type, sdk_core_1.TransactionType.StakingDeactivate);
|
|
147
|
+
tx.loadInputsAndOutputs();
|
|
148
|
+
should_1.default.deepEqual(tx.inputs, [
|
|
149
|
+
{
|
|
150
|
+
address: testData.TEST_UNDELEGATE_TX.delegator,
|
|
151
|
+
value: testData.TEST_UNDELEGATE_TX.sendMessage.value.amount.amount,
|
|
152
|
+
coin: 'tcoreum',
|
|
153
|
+
},
|
|
154
|
+
]);
|
|
155
|
+
should_1.default.deepEqual(tx.outputs, [
|
|
156
|
+
{
|
|
157
|
+
address: testData.TEST_UNDELEGATE_TX.validator,
|
|
158
|
+
value: testData.TEST_UNDELEGATE_TX.sendMessage.value.amount.amount,
|
|
159
|
+
coin: 'tcoreum',
|
|
160
|
+
},
|
|
161
|
+
]);
|
|
162
|
+
});
|
|
163
|
+
it('should build a withdraw rewards from raw signed base64', function () {
|
|
164
|
+
tx.enrichTransactionDetailsFromRawTransaction(testData.TEST_WITHDRAW_REWARDS_TX.signedTxBase64);
|
|
165
|
+
const json = tx.toJson();
|
|
166
|
+
should_1.default.equal(json.sequence, testData.TEST_WITHDRAW_REWARDS_TX.sequence);
|
|
167
|
+
should_1.default.deepEqual(json.gasBudget, testData.TEST_WITHDRAW_REWARDS_TX.gasBudget);
|
|
168
|
+
should_1.default.equal(Buffer.from(json.publicKey, 'hex').toString('base64'), testData.TEST_WITHDRAW_REWARDS_TX.pubKey);
|
|
169
|
+
should_1.default.equal(json.sendMessages[0].value.validatorAddress, testData.TEST_WITHDRAW_REWARDS_TX.sendMessage.value.validatorAddress);
|
|
170
|
+
should_1.default.equal(Buffer.from(json.signature).toString('base64'), testData.TEST_WITHDRAW_REWARDS_TX.signature);
|
|
171
|
+
should_1.default.equal(tx.type, sdk_core_1.TransactionType.StakingWithdraw);
|
|
172
|
+
tx.loadInputsAndOutputs();
|
|
173
|
+
should_1.default.deepEqual(tx.inputs, [
|
|
174
|
+
{
|
|
175
|
+
address: testData.TEST_WITHDRAW_REWARDS_TX.delegator,
|
|
176
|
+
value: 'UNAVAILABLE',
|
|
177
|
+
coin: 'tcoreum',
|
|
178
|
+
},
|
|
179
|
+
]);
|
|
180
|
+
should_1.default.deepEqual(tx.outputs, [
|
|
181
|
+
{
|
|
182
|
+
address: testData.TEST_WITHDRAW_REWARDS_TX.validator,
|
|
183
|
+
value: 'UNAVAILABLE',
|
|
184
|
+
coin: 'tcoreum',
|
|
185
|
+
},
|
|
186
|
+
]);
|
|
187
|
+
});
|
|
188
|
+
it('should fail to build a transfer from incorrect raw hex', function () {
|
|
189
|
+
should_1.default.throws(() => tx.enrichTransactionDetailsFromRawTransaction('random' + testData.TEST_SEND_TX.signedTxBase64), 'incorrect raw data');
|
|
190
|
+
});
|
|
191
|
+
it('should fail to explain transaction with invalid raw hex', function () {
|
|
192
|
+
should_1.default.throws(() => tx.enrichTransactionDetailsFromRawTransaction('randomString'), 'Invalid transaction');
|
|
193
|
+
});
|
|
194
|
+
});
|
|
195
|
+
describe('Explain transaction', () => {
|
|
196
|
+
it('should explain a transfer pay transaction', function () {
|
|
197
|
+
tx.enrichTransactionDetailsFromRawTransaction(testData.TEST_SEND_TX.signedTxBase64);
|
|
198
|
+
const explainedTransaction = tx.explainTransaction();
|
|
199
|
+
explainedTransaction.should.deepEqual({
|
|
200
|
+
displayOrder: ['id', 'outputs', 'outputAmount', 'changeOutputs', 'changeAmount', 'fee', 'type'],
|
|
201
|
+
id: testData.TEST_SEND_TX.hash,
|
|
202
|
+
outputs: [
|
|
203
|
+
{
|
|
204
|
+
address: testData.TEST_SEND_TX.recipient,
|
|
205
|
+
amount: testData.TEST_SEND_TX.sendAmount,
|
|
206
|
+
},
|
|
207
|
+
],
|
|
208
|
+
outputAmount: testData.TEST_SEND_TX.sendAmount,
|
|
209
|
+
changeOutputs: [],
|
|
210
|
+
changeAmount: '0',
|
|
211
|
+
fee: { fee: testData.TEST_SEND_TX.feeAmount },
|
|
212
|
+
type: 0,
|
|
213
|
+
});
|
|
214
|
+
});
|
|
215
|
+
it('should fail to explain transaction with invalid raw base64 string', function () {
|
|
216
|
+
should_1.default.throws(() => tx.enrichTransactionDetailsFromRawTransaction('randomString'), 'Invalid transaction');
|
|
217
|
+
});
|
|
218
|
+
});
|
|
219
|
+
});
|
|
220
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90ZXN0L3VuaXQvdHJhbnNhY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw4Q0FBeUQ7QUFDekQsNENBQXVDO0FBQ3ZDLCtDQUE4QztBQUM5QyxvREFBNEI7QUFFNUIsNERBS2dDO0FBQ2hDLCtDQUFrRDtBQUNsRCwrREFBaUQ7QUFFakQsUUFBUSxDQUFDLG9CQUFvQixFQUFFLEdBQUcsRUFBRTtJQUNsQyxJQUFJLEVBQXFCLENBQUM7SUFDMUIsTUFBTSxNQUFNLEdBQUcsZUFBSyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNwQyxNQUFNLEtBQUssR0FBRyxJQUFJLG1CQUFXLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVuRCxVQUFVLENBQUMsR0FBRyxFQUFFO1FBQ2QsRUFBRSxHQUFHLElBQUksbUNBQWlCLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzVDLENBQUMsQ0FBQyxDQUFDO0lBRUgsUUFBUSxDQUFDLG1CQUFtQixFQUFFLEdBQUcsRUFBRTtRQUNqQyxFQUFFLENBQUMsZ0NBQWdDLEVBQUU7WUFDbkMsZ0JBQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztRQUNuRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsUUFBUSxDQUFDLHNCQUFzQixFQUFFLEdBQUcsRUFBRTtRQUNwQyxFQUFFLENBQUMsZ0RBQWdELEVBQUU7WUFDbkQsRUFBRSxDQUFDLDBDQUEwQyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDcEYsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDLE1BQU0s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LEVBQUUsQ0FBQywyQ0FBMkMsRUFBRTtZQUM5QyxFQUFFLENBQUMsMENBQTBDLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUNwRixNQUFNLG9CQUFvQixHQUFHLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQ3JELG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7Z0JBQ3BDLFlBQVksRUFBRSxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQztnQkFDL0YsRUFBRSxFQUFFLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSTtnQkFDOUIsT0FBTyxFQUFFO29CQUNQO3dCQUNFLE9BQU8sRUFBRSxRQUFRLENBQUMsWUFBWSxDQUFDLFNBQVM7d0JBQ3hDLE1BQU0sRUFBRSxRQUFRLENBQUMsWUFBWSxDQUFDLFVBQVU7cUJBQ3pDO2lCQUNGO2dCQUNELFlBQVksRUFBRSxRQUFRLENBQUMsWUFBWSxDQUFDLFVBQVU7Z0JBQzlDLGFBQWEsRUFBRSxFQUFFO2dCQUNqQixZQUFZLEVBQUUsR0FBRztnQkFDakIsR0FBRyxFQUFFLEVBQUUsR0FBRyxFQUFFLFFBQVEsQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFO2dCQUM3QyxJQUFJLEVBQUUsQ0FBQzthQUNSLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsRUFBRSxDQUFDLG1FQUFtRSxFQUFFO1lBQ3RFLGdCQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQywwQ0FBMEMsQ0FBQyxjQUFjLENBQUMsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO1FBQzVHLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHRvSGV4LCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgY29pbnMgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBmcm9tQmFzZTY0IH0gZnJvbSAnQGNvc21qcy9lbmNvZGluZyc7XG5pbXBvcnQgc2hvdWxkIGZyb20gJ3Nob3VsZCc7XG5cbmltcG9ydCB7XG4gIENvc21vc1RyYW5zYWN0aW9uLFxuICBEZWxlZ2F0ZU9yVW5kZWxlZ2V0ZU1lc3NhZ2UsXG4gIFNlbmRNZXNzYWdlLFxuICBXaXRoZHJhd0RlbGVnYXRvclJld2FyZHNNZXNzYWdlLFxufSBmcm9tICdAYml0Z28vYWJzdHJhY3QtY29zbW9zJztcbmltcG9ydCB7IENvcmV1bVV0aWxzIH0gZnJvbSAnLi4vLi4vc3JjL2xpYi91dGlscyc7XG5pbXBvcnQgKiBhcyB0ZXN0RGF0YSBmcm9tICcuLi9yZXNvdXJjZXMvdGNvcmV1bSc7XG5cbmRlc2NyaWJlKCdDb3JldW0gVHJhbnNhY3Rpb24nLCAoKSA9PiB7XG4gIGxldCB0eDogQ29zbW9zVHJhbnNhY3Rpb247XG4gIGNvbnN0IGNvbmZpZyA9IGNvaW5zLmdldCgndGNvcmV1bScpO1xuICBjb25zdCB1dGlscyA9IG5ldyBDb3JldW1VdGlscyhjb25maWcubmV0d29yay50eXBlKTtcblxuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICB0eCA9IG5ldyBDb3Ntb3NUcmFuc2FjdGlvbihjb25maWcsIHV0aWxzKTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ0VtcHR5IHRyYW5zYWN0aW9uJywgKCkgPT4ge1xuICAgIGl0KCdzaG91bGQgdGhyb3cgZW1wdHkgdHJhbnNhY3Rpb24nLCBmdW5jdGlvbiAoKSB7XG4gICAgICBzaG91bGQudGhyb3dzKCgpID0+IHR4LnRvQnJvYWRjYXN0Rm9ybWF0KCksICdFbXB0eSB0cmFuc2FjdGlvbicpO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnRnJvbSByYXcgdHJhbnNhY3Rpb24nLCAoKSA9PiB7XG4gICAgaXQoJ3Nob3VsZCBidWlsZCBhIHRyYW5zZmVyIGZyb20gcmF3IHNpZ25lZCBiYXNlNjQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICB0eC5lbnJpY2hUcmFuc2FjdGlvbkRldGFpbHNGcm9tUmF3VHJhbnNhY3Rpb24odGVzdERhdGEuVEVTVF9TRU5EX1RYLnNpZ25lZFR4QmFzZTY0KTtcbiAgICAgIGNvbnN0IGpzb24gPSB0eC50b0pzb24oKTtcbiAgICAgIHNob3VsZC5lcXVhbChqc29uLnNlcXVlbmNlLCB0ZXN0RGF0YS5URVNUX1NFTkRfVFguc2VxdWVuY2UpO1xuICAgICAgc2hvdWxkLmRlZXBFcXVhbChqc29uLmdhc0J1ZGdldCwgdGVzdERhdGEuVEVTVF9TRU5EX1RYLmdhc0J1ZGdldCk7XG4gICAgICBzaG91bGQuZXF1YWwoanNvbi5wdWJsaWNLZXksIHRvSGV4KGZyb21CYXNlNjQodGVzdERhdGEuVEVTVF9TRU5EX1RYLnB1YktleSkpKTtcbiAgICAgIHNob3VsZC5lcXVhbChcbiAgICAgICAgKGpzb24uc2VuZE1lc3NhZ2VzWzBdLnZhbHVlIGFzIFNlbmRNZXNzYWdlKS50b0FkZHJlc3MsXG4gICAgICAgIHRlc3REYXRhLlRFU1RfU0VORF9UWC5zZW5kTWVzc2FnZS52YWx1ZS50b0FkZHJlc3NcbiAgICAgICk7XG4gICAgICBzaG91bGQuZGVlcEVxdWFsKFxuICAgICAgICAoanNvbi5zZW5kTWVzc2FnZXNbMF0udmFsdWUgYXMgU2VuZE1lc3NhZ2UpLmFtb3VudCxcbiAgICAgICAgdGVzdERhdGEuVEVTVF9TRU5EX1RYLnNlbmRNZXNzYWdlLnZhbHVlLmFtb3VudFxuICAgICAgKTtcbiAgICAgIHNob3VsZC5lcXVhbChCdWZmZXIuZnJvbShqc29uLnNpZ25hdHVyZSBhcyBhbnkpLnRvU3RyaW5nKCdiYXNlNjQnKSwgdGVzdERhdGEuVEVTVF9TRU5EX1RYLnNpZ25hdHVyZSk7XG4gICAgICBzaG91bGQuZXF1YWwodHgudHlwZSwgVHJhbnNhY3Rpb25UeXBlLlNlbmQpO1xuICAgICAgdHgubG9hZElucHV0c0FuZE91dHB1dHMoKTtcbiAgICAgIHNob3VsZC5kZWVwRXF1YWwodHguaW5wdXRzLCBbXG4gICAgICAgIHtcbiAgICAgICAgICBhZGRyZXNzOiB0ZXN0RGF0YS5URVNUX1NFTkRfVFguc2VuZGVyLFxuICAgICAgICAgIHZhbHVlOiB0ZXN0RGF0YS5URVNUX1NFTkRfVFguc2VuZE1lc3NhZ2UudmFsdWUuYW1vdW50WzBdLmFtb3VudCxcbiAgICAgICAgICBjb2luOiAndGNvcmV1bScsXG4gICAgICAgIH0sXG4gICAgICBdKTtcbiAgICAgIHNob3VsZC5kZWVwRXF1YWwodHgub3V0cHV0cywgW1xuICAgICAgICB7XG4gICAgICAgICAgYWRkcmVzczogdGVzdERhdGEuVEVTVF9TRU5EX1RYLnNlbmRNZXNzYWdlLnZhbHVlLnRvQWRkcmVzcyxcbiAgICAgICAgICB2YWx1ZTogdGVzdERhdGEuVEVTVF9TRU5EX1RYLnNlbmRNZXNzYWdlLnZhbHVlLmFtb3VudFswXS5hbW91bnQsXG4gICAgICAgICAgY29pbjogJ3Rjb3JldW0nLFxuICAgICAgICB9LFxuICAgICAgXSk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGJ1aWxkIGEgdHJhbnNmZXIgZnJvbSByYXcgc2lnbmVkIGhleCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIHR4LmVucmljaFRyYW5zYWN0aW9uRGV0YWlsc0Zyb21SYXdUcmFuc2FjdGlvbih0b0hleChmcm9tQmFzZTY0KHRlc3REYXRhLlRFU1RfU0VORF9UWC5zaWduZWRUeEJhc2U2NCkpKTtcbiAgICAgIGNvbnN0IGpzb24gPSB0eC50b0pzb24oKTtcbiAgICAgIHNob3VsZC5lcXVhbChqc29uLnNlcXVlbmNlLCB0ZXN0RGF0YS5URVNUX1NFTkRfVFguc2VxdWVuY2UpO1xuICAgICAgc2hvdWxkLmRlZXBFcXVhbChqc29uLmdhc0J1ZGdldCwgdGVzdERhdGEuVEVTVF9TRU5EX1RYLmdhc0J1ZGdldCk7XG4gICAgICBzaG91bGQuZXF1YWwoanNvbi5wdWJsaWNLZXksIHRvSGV4KGZyb21CYXNlNjQodGVzdERhdGEuVEVTVF9TRU5EX1RYLnB1YktleSkpKTtcbiAgICAgIHNob3VsZC5lcXVhbChcbiAgICAgICAgKGpzb24uc2VuZE1lc3NhZ2VzWzBdLnZhbHVlIGFzIFNlbmRNZXNzYWdlKS50b0FkZHJlc3MsXG4gICAgICAgIHRlc3REYXRhLlRFU1RfU0VORF9UWC5zZW5kTWVzc2FnZS52YWx1ZS50b0FkZHJlc3NcbiAgICAgICk7XG4gICAgICBzaG91bGQuZGVlcEVxdWFsKFxuICAgICAgICAoanNvbi5zZW5kTWVzc2FnZXNbMF0udmFsdWUgYXMgU2VuZE1lc3NhZ2UpLmFtb3VudCxcbiAgICAgICAgdGVzdERhdGEuVEVTVF9TRU5EX1RYLnNlbmRNZXNzYWdlLnZhbHVlLmFtb3VudFxuICAgICAgKTtcbiAgICAgIHNob3VsZC5lcXVhbChCdWZmZXIuZnJvbShqc29uLnNpZ25hdHVyZSBhcyBhbnkpLnRvU3RyaW5nKCdiYXNlNjQnKSwgdGVzdERhdGEuVEVTVF9TRU5EX1RYLnNpZ25hdHVyZSk7XG4gICAgICBzaG91bGQuZXF1YWwodHgudHlwZSwgVHJhbnNhY3Rpb25UeXBlLlNlbmQpO1xuICAgICAgdHgubG9hZElucHV0c0FuZE91dHB1dHMoKTtcbiAgICAgIHNob3VsZC5kZWVwRXF1YWwodHguaW5wdXRzLCBbXG4gICAgICAgIHtcbiAgICAgICAgICBhZGRyZXNzOiB0ZXN0RGF0YS5URVNUX1NFTkRfVFguc2VuZGVyLFxuICAgICAgICAgIHZhbHVlOiB0ZXN0RGF0YS5URVNUX1NFTkRfVFguc2VuZE1lc3NhZ2UudmFsdWUuYW1vdW50WzBdLmFtb3VudCxcbiAgICAgICAgICBjb2luOiAndGNvcmV1bScsXG4gICAgICAgIH0sXG4gICAgICBdKTtcbiAgICAgIHNob3VsZC5kZWVwRXF1YWwodHgub3V0cHV0cywgW1xuICAgICAgICB7XG4gICAgICAgICAgYWRkcmVzczogdGVzdERhdGEuVEVTVF9TRU5EX1RYLnNlbmRNZXNzYWdlLnZhbHVlLnRvQWRkcmVzcyxcbiAgICAgICAgICB2YWx1ZTogdGVzdERhdGEuVEVTVF9TRU5EX1RYLnNlbmRNZXNzYWdlLnZhbHVlLmFtb3VudFswXS5hbW91bnQsXG4gICAgICAgICAgY29pbjogJ3Rjb3JldW0nLFxuICAgICAgICB9LFxuICAgICAgXSk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGJ1aWxkIGEgZGVsZWdhdGUgdHhuIGZyb20gcmF3IHNpZ25lZCBiYXNlNjQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICB0eC5lbnJpY2hUcmFuc2FjdGlvbkRldGFpbHNGcm9tUmF3VHJhbnNhY3Rpb24odGVzdERhdGEuVEVTVF9ERUxFR0FURV9UWC5zaWduZWRUeEJhc2U2NCk7XG4gICAgICBjb25zdCBqc29uID0gdHgudG9Kc29uKCk7XG4gICAgICBzaG91bGQuZXF1YWwoanNvbi5zZXF1ZW5jZSwgdGVzdERhdGEuVEVTVF9ERUxFR0FURV9UWC5zZXF1ZW5jZSk7XG4gICAgICBzaG91bGQuZGVlcEVxdWFsKGpzb24uZ2FzQnVkZ2V0LCB0ZXN0RGF0YS5URVNUX0RFTEVHQVRFX1RYLmdhc0J1ZGdldCk7XG4gICAgICBzaG91bGQuZXF1YWwoQnVmZmVyLmZyb20oanNvbi5wdWJsaWNLZXkgYXMgYW55LCAnaGV4JykudG9TdHJpbmcoJ2Jhc2U2NCcpLCB0ZXN0RGF0YS5URVNUX0RFTEVHQVRFX1RYLnB1YktleSk7XG4gICAgICBzaG91bGQuZXF1YWwoXG4gICAgICAgIChqc29uLnNlbmRNZXNzYWdlc1swXS52YWx1ZSBhcyBEZWxlZ2F0ZU9yVW5kZWxlZ2V0ZU1lc3NhZ2UpLnZhbGlkYXRvckFkZHJlc3MsXG4gICAgICAgIHRlc3REYXRhLlRFU1RfREVMRUdBVEVfVFguc2VuZE1lc3NhZ2UudmFsdWUudmFsaWRhdG9yQWRkcmVzc1xuICAgICAgKTtcbiAgICAgIHNob3VsZC5kZWVwRXF1YWwoXG4gICAgICAgIChqc29uLnNlbmRNZXNzYWdlc1swXS52YWx1ZSBhcyBEZWxlZ2F0ZU9yVW5kZWxlZ2V0ZU1lc3NhZ2UpLmFtb3VudCxcbiAgICAgICAgdGVzdERhdGEuVEVTVF9ERUxFR0FURV9UWC5zZW5kTWVzc2FnZS52YWx1ZS5hbW91bnRcbiAgICAgICk7XG4gICAgICBzaG91bGQuZXF1YWwoQnVmZmVyLmZyb20oanNvbi5zaWduYXR1cmUgYXMgYW55KS50b1N0cmluZygnYmFzZTY0JyksIHRlc3REYXRhLlRFU1RfREVMRUdBVEVfVFguc2lnbmF0dXJlKTtcbiAgICAgIHNob3VsZC5lcXVhbCh0eC50eXBlLCBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ0FjdGl2YXRlKTtcbiAgICAgIHR4LmxvYWRJbnB1dHNBbmRPdXRwdXRzKCk7XG4gICAgICBzaG91bGQuZGVlcEVxdWFsKHR4LmlucHV0cywgW1xuICAgICAgICB7XG4gICAgICAgICAgYWRkcmVzczogdGVzdERhdGEuVEVTVF9ERUxFR0FURV9UWC5kZWxlZ2F0b3IsXG4gICAgICAgICAgdmFsdWU6IHRlc3REYXRhLlRFU1RfREVMRUdBVEVfVFguc2VuZE1lc3NhZ2UudmFsdWUuYW1vdW50LmFtb3VudCxcbiAgICAgICAgICBjb2luOiAndGNvcmV1bScsXG4gICAgICAgIH0sXG4gICAgICBdKTtcbiAgICAgIHNob3VsZC5kZWVwRXF1YWwodHgub3V0cHV0cywgW1xuICAgICAgICB7XG4gICAgICAgICAgYWRkcmVzczogdGVzdERhdGEuVEVTVF9ERUxFR0FURV9UWC52YWxpZGF0b3IsXG4gICAgICAgICAgdmFsdWU6IHRlc3REYXRhLlRFU1RfREVMRUdBVEVfVFguc2VuZE1lc3NhZ2UudmFsdWUuYW1vdW50LmFtb3VudCxcbiAgICAgICAgICBjb2luOiAndGNvcmV1bScsXG4gICAgICAgIH0sXG4gICAgICBdKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgYnVpbGQgYSB1bmRlbGVnYXRlIHR4biBmcm9tIHJhdyBzaWduZWQgYmFzZTY0JywgZnVuY3Rpb24gKCkge1xuICAgICAgdHguZW5yaWNoVHJhbnNhY3Rpb25EZXRhaWxzRnJvbVJhd1RyYW5zYWN0aW9uKHRlc3REYXRhLlRFU1RfVU5ERUxFR0FURV9UWC5zaWduZWRUeEJhc2U2NCk7XG4gICAgICBjb25zdCBqc29uID0gdHgudG9Kc29uKCk7XG4gICAgICBzaG91bGQuZXF1YWwoanNvbi5zZXF1ZW5jZSwgdGVzdERhdGEuVEVTVF9VTkRFTEVHQVRFX1RYLnNlcXVlbmNlKTtcbiAgICAgIHNob3VsZC5kZWVwRXF1YWwoanNvbi5nYXNCdWRnZXQsIHRlc3REYXRhLlRFU1RfVU5ERUxFR0FURV9UWC5nYXNCdWRnZXQpO1xuICAgICAgc2hvdWxkLmVxdWFsKEJ1ZmZlci5mcm9tKGpzb24ucHVibGljS2V5IGFzIGFueSwgJ2hleCcpLnRvU3RyaW5nKCdiYXNlNjQnKSwgdGVzdERhdGEuVEVTVF9VTkRFTEVHQVRFX1RYLnB1YktleSk7XG4gICAgICBzaG91bGQuZXF1YWwoXG4gICAgICAgIChqc29uLnNlbmRNZXNzYWdlc1swXS52YWx1ZSBhcyBEZWxlZ2F0ZU9yVW5kZWxlZ2V0ZU1lc3NhZ2UpLnZhbGlkYXRvckFkZHJlc3MsXG4gICAgICAgIHRlc3REYXRhLlRFU1RfVU5ERUxFR0FURV9UWC5zZW5kTWVzc2FnZS52YWx1ZS52YWxpZGF0b3JBZGRyZXNzXG4gICAgICApO1xuICAgICAgc2hvdWxkLmRlZXBFcXVhbChcbiAgICAgICAgKGpzb24uc2VuZE1lc3NhZ2VzWzBdLnZhbHVlIGFzIERlbGVnYXRlT3JVbmRlbGVnZXRlTWVzc2FnZSkuYW1vdW50LFxuICAgICAgICB0ZXN0RGF0YS5URVNUX1VOREVMRUdBVEVfVFguc2VuZE1lc3NhZ2UudmFsdWUuYW1vdW50XG4gICAgICApO1xuICAgICAgc2hvdWxkLmVxdWFsKEJ1ZmZlci5mcm9tKGpzb24uc2lnbmF0dXJlIGFzIGFueSkudG9TdHJpbmcoJ2Jhc2U2NCcpLCB0ZXN0RGF0YS5URVNUX1VOREVMRUdBVEVfVFguc2lnbmF0dXJlKTtcbiAgICAgIHNob3VsZC5lcXVhbCh0eC50eXBlLCBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ0RlYWN0aXZhdGUpO1xuICAgICAgdHgubG9hZElucHV0c0FuZE91dHB1dHMoKTtcbiAgICAgIHNob3VsZC5kZWVwRXF1YWwodHguaW5wdXRzLCBbXG4gICAgICAgIHtcbiAgICAgICAgICBhZGRyZXNzOiB0ZXN0RGF0YS5URVNUX1VOREVMRUdBVEVfVFguZGVsZWdhdG9yLFxuICAgICAgICAgIHZhbHVlOiB0ZXN0RGF0YS5URVNUX1VOREVMRUdBVEVfVFguc2VuZE1lc3NhZ2UudmFsdWUuYW1vdW50LmFtb3VudCxcbiAgICAgICAgICBjb2luOiAndGNvcmV1bScsXG4gICAgICAgIH0sXG4gICAgICBdKTtcbiAgICAgIHNob3VsZC5kZWVwRXF1YWwodHgub3V0cHV0cywgW1xuICAgICAgICB7XG4gICAgICAgICAgYWRkcmVzczogdGVzdERhdGEuVEVTVF9VTkRFTEVHQVRFX1RYLnZhbGlkYXRvcixcbiAgICAgICAgICB2YWx1ZTogdGVzdERhdGEuVEVTVF9VTkRFTEVHQVRFX1RYLnNlbmRNZXNzYWdlLnZhbHVlLmFtb3VudC5hbW91bnQsXG4gICAgICAgICAgY29pbjogJ3Rjb3JldW0nLFxuICAgICAgICB9LFxuICAgICAgXSk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGJ1aWxkIGEgd2l0aGRyYXcgcmV3YXJkcyBmcm9tIHJhdyBzaWduZWQgYmFzZTY0JywgZnVuY3Rpb24gKCkge1xuICAgICAgdHguZW5yaWNoVHJhbnNhY3Rpb25EZXRhaWxzRnJvbVJhd1RyYW5zYWN0aW9uKHRlc3REYXRhLlRFU1RfV0lUSERSQVdfUkVXQVJEU19UWC5zaWduZWRUeEJhc2U2NCk7XG4gICAgICBjb25zdCBqc29uID0gdHgudG9Kc29uKCk7XG4gICAgICBzaG91bGQuZXF1YWwoanNvbi5zZXF1ZW5jZSwgdGVzdERhdGEuVEVTVF9XSVRIRFJBV19SRVdBUkRTX1RYLnNlcXVlbmNlKTtcbiAgICAgIHNob3VsZC5kZWVwRXF1YWwoanNvbi5nYXNCdWRnZXQsIHRlc3REYXRhLlRFU1RfV0lUSERSQVdfUkVXQVJEU19UWC5nYXNCdWRnZXQpO1xuICAgICAgc2hvdWxkLmVxdWFsKFxuICAgICAgICBCdWZmZXIuZnJvbShqc29uLnB1YmxpY0tleSBhcyBhbnksICdoZXgnKS50b1N0cmluZygnYmFzZTY0JyksXG4gICAgICAgIHRlc3REYXRhLlRFU1RfV0lUSERSQVdfUkVXQVJEU19UWC5wdWJLZXlcbiAgICAgICk7XG4gICAgICBzaG91bGQuZXF1YWwoXG4gICAgICAgIChqc29uLnNlbmRNZXNzYWdlc1swXS52YWx1ZSBhcyBXaXRoZHJhd0RlbGVnYXRvclJld2FyZHNNZXNzYWdlKS52YWxpZGF0b3JBZGRyZXNzLFxuICAgICAgICB0ZXN0RGF0YS5URVNUX1dJVEhEUkFXX1JFV0FSRFNfVFguc2VuZE1lc3NhZ2UudmFsdWUudmFsaWRhdG9yQWRkcmVzc1xuICAgICAgKTtcbiAgICAgIHNob3VsZC5lcXVhbChCdWZmZXIuZnJvbShqc29uLnNpZ25hdHVyZSBhcyBhbnkpLnRvU3RyaW5nKCdiYXNlNjQnKSwgdGVzdERhdGEuVEVTVF9XSVRIRFJBV19SRVdBUkRTX1RYLnNpZ25hdHVyZSk7XG4gICAgICBzaG91bGQuZXF1YWwodHgudHlwZSwgVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdXaXRoZHJhdyk7XG5cbiAgICAgIHR4LmxvYWRJbnB1dHNBbmRPdXRwdXRzKCk7XG4gICAgICBzaG91bGQuZGVlcEVxdWFsKHR4LmlucHV0cywgW1xuICAgICAgICB7XG4gICAgICAgICAgYWRkcmVzczogdGVzdERhdGEuVEVTVF9XSVRIRFJBV19SRVdBUkRTX1RYLmRlbGVnYXRvcixcbiAgICAgICAgICB2YWx1ZTogJ1VOQVZBSUxBQkxFJyxcbiAgICAgICAgICBjb2luOiAndGNvcmV1bScsXG4gICAgICAgIH0sXG4gICAgICBdKTtcbiAgICAgIHNob3VsZC5kZWVwRXF1YWwodHgub3V0cHV0cywgW1xuICAgICAgICB7XG4gICAgICAgICAgYWRkcmVzczogdGVzdERhdGEuVEVTVF9XSVRIRFJBV19SRVdBUkRTX1RYLnZhbGlkYXRvcixcbiAgICAgICAgICB2YWx1ZTogJ1VOQVZBSUxBQkxFJyxcbiAgICAgICAgICBjb2luOiAndGNvcmV1bScsXG4gICAgICAgIH0sXG4gICAgICBdKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgZmFpbCB0byBidWlsZCBhIHRyYW5zZmVyIGZyb20gaW5jb3JyZWN0IHJhdyBoZXgnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBzaG91bGQudGhyb3dzKFxuICAgICAgICAoKSA9PiB0eC5lbnJpY2hUcmFuc2FjdGlvbkRldGFpbHNGcm9tUmF3VHJhbnNhY3Rpb24oJ3JhbmRvbScgKyB0ZXN0RGF0YS5URVNUX1NFTkRfVFguc2lnbmVkVHhCYXNlNjQpLFxuICAgICAgICAnaW5jb3JyZWN0IHJhdyBkYXRhJ1xuICAgICAgKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgZmFpbCB0byBleHBsYWluIHRyYW5zYWN0aW9uIHdpdGggaW52YWxpZCByYXcgaGV4JywgZnVuY3Rpb24gKCkge1xuICAgICAgc2hvdWxkLnRocm93cygoKSA9PiB0eC5lbnJpY2hUcmFuc2FjdGlvbkRldGFpbHNGcm9tUmF3VHJhbnNhY3Rpb24oJ3JhbmRvbVN0cmluZycpLCAnSW52YWxpZCB0cmFuc2FjdGlvbicpO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnRXhwbGFpbiB0cmFuc2FjdGlvbicsICgpID0+IHtcbiAgICBpdCgnc2hvdWxkIGV4cGxhaW4gYSB0cmFuc2ZlciBwYXkgdHJhbnNhY3Rpb24nLCBmdW5jdGlvbiAoKSB7XG4gICAgICB0eC5lbnJpY2hUcmFuc2FjdGlvbkRldGFpbHNGcm9tUmF3VHJhbnNhY3Rpb24odGVzdERhdGEuVEVTVF9TRU5EX1RYLnNpZ25lZFR4QmFzZTY0KTtcbiAgICAgIGNvbnN0IGV4cGxhaW5lZFRyYW5zYWN0aW9uID0gdHguZXhwbGFpblRyYW5zYWN0aW9uKCk7XG4gICAgICBleHBsYWluZWRUcmFuc2FjdGlvbi5zaG91bGQuZGVlcEVxdWFsKHtcbiAgICAgICAgZGlzcGxheU9yZGVyOiBbJ2lkJywgJ291dHB1dHMnLCAnb3V0cHV0QW1vdW50JywgJ2NoYW5nZU91dHB1dHMnLCAnY2hhbmdlQW1vdW50JywgJ2ZlZScsICd0eXBlJ10sXG4gICAgICAgIGlkOiB0ZXN0RGF0YS5URVNUX1NFTkRfVFguaGFzaCxcbiAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGFkZHJlc3M6IHRlc3REYXRhLlRFU1RfU0VORF9UWC5yZWNpcGllbnQsXG4gICAgICAgICAgICBhbW91bnQ6IHRlc3REYXRhLlRFU1RfU0VORF9UWC5zZW5kQW1vdW50LFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIG91dHB1dEFtb3VudDogdGVzdERhdGEuVEVTVF9TRU5EX1RYLnNlbmRBbW91bnQsXG4gICAgICAgIGNoYW5nZU91dHB1dHM6IFtdLFxuICAgICAgICBjaGFuZ2VBbW91bnQ6ICcwJyxcbiAgICAgICAgZmVlOiB7IGZlZTogdGVzdERhdGEuVEVTVF9TRU5EX1RYLmZlZUFtb3VudCB9LFxuICAgICAgICB0eXBlOiAwLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGZhaWwgdG8gZXhwbGFpbiB0cmFuc2FjdGlvbiB3aXRoIGludmFsaWQgcmF3IGJhc2U2NCBzdHJpbmcnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBzaG91bGQudGhyb3dzKCgpID0+IHR4LmVucmljaFRyYW5zYWN0aW9uRGV0YWlsc0Zyb21SYXdUcmFuc2FjdGlvbigncmFuZG9tU3RyaW5nJyksICdJbnZhbGlkIHRyYW5zYWN0aW9uJyk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StakingActivateBuilder.d.ts","sourceRoot":"","sources":["../../../../test/unit/transactionBuilder/StakingActivateBuilder.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
const sdk_core_1 = require("@bitgo/sdk-core");
|
|
40
|
+
const encoding_1 = require("@cosmjs/encoding");
|
|
41
|
+
const should_1 = __importDefault(require("should"));
|
|
42
|
+
const sdk_api_1 = require("@bitgo/sdk-api");
|
|
43
|
+
const sdk_test_1 = require("@bitgo/sdk-test");
|
|
44
|
+
const src_1 = require("../../../src");
|
|
45
|
+
const testData = __importStar(require("../../resources/tcoreum"));
|
|
46
|
+
describe('Coreum Delegate txn Builder', () => {
|
|
47
|
+
let bitgo;
|
|
48
|
+
let basecoin;
|
|
49
|
+
let factory;
|
|
50
|
+
let testTx;
|
|
51
|
+
before(function () {
|
|
52
|
+
bitgo = sdk_test_1.TestBitGo.decorate(sdk_api_1.BitGoAPI, { env: 'mock' });
|
|
53
|
+
bitgo.safeRegister('coreum', src_1.Coreum.createInstance);
|
|
54
|
+
bitgo.safeRegister('tcoreum', src_1.Tcoreum.createInstance);
|
|
55
|
+
bitgo.initializeTestVars();
|
|
56
|
+
basecoin = bitgo.coin('tcoreum');
|
|
57
|
+
factory = basecoin.getBuilder();
|
|
58
|
+
testTx = testData.TEST_DELEGATE_TX;
|
|
59
|
+
});
|
|
60
|
+
it('should build a Delegate tx with signature', async function () {
|
|
61
|
+
const txBuilder = factory.getStakingActivateBuilder();
|
|
62
|
+
txBuilder.sequence(testTx.sequence);
|
|
63
|
+
txBuilder.gasBudget(testTx.gasBudget);
|
|
64
|
+
txBuilder.messages([testTx.sendMessage.value]);
|
|
65
|
+
txBuilder.publicKey((0, sdk_core_1.toHex)((0, encoding_1.fromBase64)(testTx.pubKey)));
|
|
66
|
+
txBuilder.addSignature({ pub: (0, sdk_core_1.toHex)((0, encoding_1.fromBase64)(testTx.pubKey)) }, Buffer.from(testTx.signature, 'base64'));
|
|
67
|
+
const tx = await txBuilder.build();
|
|
68
|
+
const json = await (await txBuilder.build()).toJson();
|
|
69
|
+
should_1.default.equal(tx.type, sdk_core_1.TransactionType.StakingActivate);
|
|
70
|
+
should_1.default.deepEqual(json.gasBudget, testTx.gasBudget);
|
|
71
|
+
should_1.default.deepEqual(json.sendMessages, [testTx.sendMessage]);
|
|
72
|
+
should_1.default.deepEqual(json.publicKey, (0, sdk_core_1.toHex)((0, encoding_1.fromBase64)(testTx.pubKey)));
|
|
73
|
+
should_1.default.deepEqual(json.sequence, testTx.sequence);
|
|
74
|
+
const rawTx = tx.toBroadcastFormat();
|
|
75
|
+
should_1.default.equal(rawTx, testTx.signedTxBase64);
|
|
76
|
+
should_1.default.deepEqual(tx.inputs, [
|
|
77
|
+
{
|
|
78
|
+
address: testTx.delegator,
|
|
79
|
+
value: testTx.sendMessage.value.amount.amount,
|
|
80
|
+
coin: basecoin.getChain(),
|
|
81
|
+
},
|
|
82
|
+
]);
|
|
83
|
+
should_1.default.deepEqual(tx.outputs, [
|
|
84
|
+
{
|
|
85
|
+
address: testTx.validator,
|
|
86
|
+
value: testTx.sendMessage.value.amount.amount,
|
|
87
|
+
coin: basecoin.getChain(),
|
|
88
|
+
},
|
|
89
|
+
]);
|
|
90
|
+
});
|
|
91
|
+
it('should build a Delegate tx without signature', async function () {
|
|
92
|
+
const txBuilder = factory.getStakingActivateBuilder();
|
|
93
|
+
txBuilder.sequence(testTx.sequence);
|
|
94
|
+
txBuilder.gasBudget(testTx.gasBudget);
|
|
95
|
+
txBuilder.messages([testTx.sendMessage.value]);
|
|
96
|
+
txBuilder.publicKey((0, sdk_core_1.toHex)((0, encoding_1.fromBase64)(testTx.pubKey)));
|
|
97
|
+
const tx = await txBuilder.build();
|
|
98
|
+
const json = await (await txBuilder.build()).toJson();
|
|
99
|
+
should_1.default.equal(tx.type, sdk_core_1.TransactionType.StakingActivate);
|
|
100
|
+
should_1.default.deepEqual(json.gasBudget, testTx.gasBudget);
|
|
101
|
+
should_1.default.deepEqual(json.sendMessages, [testTx.sendMessage]);
|
|
102
|
+
should_1.default.deepEqual(json.publicKey, (0, sdk_core_1.toHex)((0, encoding_1.fromBase64)(testTx.pubKey)));
|
|
103
|
+
should_1.default.deepEqual(json.sequence, testTx.sequence);
|
|
104
|
+
tx.toBroadcastFormat();
|
|
105
|
+
should_1.default.deepEqual(tx.inputs, [
|
|
106
|
+
{
|
|
107
|
+
address: testTx.delegator,
|
|
108
|
+
value: testTx.sendMessage.value.amount.amount,
|
|
109
|
+
coin: basecoin.getChain(),
|
|
110
|
+
},
|
|
111
|
+
]);
|
|
112
|
+
should_1.default.deepEqual(tx.outputs, [
|
|
113
|
+
{
|
|
114
|
+
address: testTx.validator,
|
|
115
|
+
value: testTx.sendMessage.value.amount.amount,
|
|
116
|
+
coin: basecoin.getChain(),
|
|
117
|
+
},
|
|
118
|
+
]);
|
|
119
|
+
});
|
|
120
|
+
it('should sign a Delegate tx', async function () {
|
|
121
|
+
const txBuilder = factory.getStakingActivateBuilder();
|
|
122
|
+
txBuilder.sequence(testTx.sequence);
|
|
123
|
+
txBuilder.gasBudget(testTx.gasBudget);
|
|
124
|
+
txBuilder.messages([testTx.sendMessage.value]);
|
|
125
|
+
txBuilder.accountNumber(testTx.accountNumber);
|
|
126
|
+
txBuilder.chainId(testTx.chainId);
|
|
127
|
+
txBuilder.sign({ key: (0, sdk_core_1.toHex)((0, encoding_1.fromBase64)(testTx.privateKey)) });
|
|
128
|
+
const tx = await txBuilder.build();
|
|
129
|
+
const json = await (await txBuilder.build()).toJson();
|
|
130
|
+
should_1.default.equal(tx.type, sdk_core_1.TransactionType.StakingActivate);
|
|
131
|
+
should_1.default.deepEqual(json.gasBudget, testTx.gasBudget);
|
|
132
|
+
should_1.default.deepEqual(json.sendMessages, [testTx.sendMessage]);
|
|
133
|
+
should_1.default.deepEqual(json.publicKey, (0, sdk_core_1.toHex)((0, encoding_1.fromBase64)(testTx.pubKey)));
|
|
134
|
+
should_1.default.deepEqual(json.sequence, testTx.sequence);
|
|
135
|
+
const rawTx = tx.toBroadcastFormat();
|
|
136
|
+
should_1.default.equal(tx.signature[0], (0, sdk_core_1.toHex)((0, encoding_1.fromBase64)(testTx.signature)));
|
|
137
|
+
should_1.default.equal(rawTx, testTx.signedTxBase64);
|
|
138
|
+
should_1.default.deepEqual(tx.inputs, [
|
|
139
|
+
{
|
|
140
|
+
address: testTx.delegator,
|
|
141
|
+
value: testTx.sendMessage.value.amount.amount,
|
|
142
|
+
coin: basecoin.getChain(),
|
|
143
|
+
},
|
|
144
|
+
]);
|
|
145
|
+
should_1.default.deepEqual(tx.outputs, [
|
|
146
|
+
{
|
|
147
|
+
address: testTx.validator,
|
|
148
|
+
value: testTx.sendMessage.value.amount.amount,
|
|
149
|
+
coin: basecoin.getChain(),
|
|
150
|
+
},
|
|
151
|
+
]);
|
|
152
|
+
});
|
|
153
|
+
});
|
|
154
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3Rha2luZ0FjdGl2YXRlQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Rlc3QvdW5pdC90cmFuc2FjdGlvbkJ1aWxkZXIvU3Rha2luZ0FjdGl2YXRlQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDhDQUF5RDtBQUN6RCwrQ0FBOEM7QUFDOUMsb0RBQTRCO0FBRTVCLDRDQUEwQztBQUMxQyw4Q0FBMEQ7QUFDMUQsc0NBQStDO0FBQy9DLGtFQUFvRDtBQUVwRCxRQUFRLENBQUMsNkJBQTZCLEVBQUUsR0FBRyxFQUFFO0lBQzNDLElBQUksS0FBbUIsQ0FBQztJQUN4QixJQUFJLFFBQVEsQ0FBQztJQUNiLElBQUksT0FBTyxDQUFDO0lBQ1osSUFBSSxNQUFNLENBQUM7SUFDWCxNQUFNLENBQUM7UUFDTCxLQUFLLEdBQUcsb0JBQVMsQ0FBQyxRQUFRLENBQUMsa0JBQVEsRUFBRSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ3RELEtBQUssQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLFlBQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNwRCxLQUFLLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxhQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDdEQsS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDM0IsUUFBUSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDakMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNoQyxNQUFNLEdBQUcsUUFBUSxDQUFDLGdCQUFnQixDQUFDO0lBQ3JDLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDJDQUEyQyxFQUFFLEtBQUs7UUFDbkQsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLHlCQUF5QixFQUFFLENBQUM7UUFDdEQsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDcEMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUMvQyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUEsZ0JBQUssRUFBQyxJQUFBLHFCQUFVLEVBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0RCxTQUFTLENBQUMsWUFBWSxDQUFDLEVBQUUsR0FBRyxFQUFFLElBQUEsZ0JBQUssRUFBQyxJQUFBLHFCQUFVLEVBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUUzRyxNQUFNLEVBQUUsR0FBRyxNQUFNLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN0RCxnQkFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLDBCQUFlLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDdkQsZ0JBQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbkQsZ0JBQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQzFELGdCQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBQSxnQkFBSyxFQUFDLElBQUEscUJBQVUsRUFBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25FLGdCQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2pELE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3JDLGdCQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDM0MsZ0JBQU0sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRTtZQUMxQjtnQkFDRSxPQUFPLEVBQUUsTUFBTSxDQUFDLFNBQVM7Z0JBQ3pCLEtBQUssRUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTTtnQkFDN0MsSUFBSSxFQUFFLFFBQVEsQ0FBQyxRQUFRLEVBQUU7YUFDMUI7U0FDRixDQUFDLENBQUM7UUFDSCxnQkFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFO1lBQzNCO2dCQUNFLE9BQU8sRUFBRSxNQUFNLENBQUMsU0FBUztnQkFDekIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNO2dCQUM3QyxJQUFJLEVBQUUsUUFBUSxDQUFDLFFBQVEsRUFBRTthQUMxQjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDhDQUE4QyxFQUFFLEtBQUs7UUFDdEQsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLHlCQUF5QixFQUFFLENBQUM7UUFDdEQsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDcEMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUMvQyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUEsZ0JBQUssRUFBQyxJQUFBLHFCQUFVLEVBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0RCxNQUFNLEVBQUUsR0FBRyxNQUFNLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN0RCxnQkFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLDBCQUFlLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDdkQsZ0JBQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbkQsZ0JBQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQzFELGdCQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBQSxnQkFBSyxFQUFDLElBQUEscUJBQVUsRUFBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25FLGdCQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2pELEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3ZCLGdCQUFNLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUU7WUFDMUI7Z0JBQ0UsT0FBTyxFQUFFLE1BQU0sQ0FBQyxTQUFTO2dCQUN6QixLQUFLLEVBQUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU07Z0JBQzdDLElBQUksRUFBRSxRQUFRLENBQUMsUUFBUSxFQUFFO2FBQzFCO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsZ0JBQU0sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRTtZQUMzQjtnQkFDRSxPQUFPLEVBQUUsTUFBTSxDQUFDLFNBQVM7Z0JBQ3pCLEtBQUssRUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTTtnQkFDN0MsSUFBSSxFQUFFLFFBQVEsQ0FBQyxRQUFRLEVBQUU7YUFDMUI7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQywyQkFBMkIsRUFBRSxLQUFLO1FBQ25DLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1FBQ3RELFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3BDLFNBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3RDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDL0MsU0FBUyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDOUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbEMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFBLGdCQUFLLEVBQUMsSUFBQSxxQkFBVSxFQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM5RCxNQUFNLEVBQUUsR0FBRyxNQUFNLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN0RCxnQkFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLDBCQUFlLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDdkQsZ0JBQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbkQsZ0JBQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQzFELGdCQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBQSxnQkFBSyxFQUFDLElBQUEscUJBQVUsRUFBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25FLGdCQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2pELE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3JDLGdCQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBQSxnQkFBSyxFQUFDLElBQUEscUJBQVUsRUFBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25FLGdCQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDM0MsZ0JBQU0sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRTtZQUMxQjtnQkFDRSxPQUFPLEVBQUUsTUFBTSxDQUFDLFNBQVM7Z0JBQ3pCLEtBQUssRUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTTtnQkFDN0MsSUFBSSxFQUFFLFFBQVEsQ0FBQyxRQUFRLEVBQUU7YUFDMUI7U0FDRixDQUFDLENBQUM7UUFDSCxnQkFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFO1lBQzNCO2dCQUNFLE9BQU8sRUFBRSxNQUFNLENBQUMsU0FBUztnQkFDekIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNO2dCQUM3QyxJQUFJLEVBQUUsUUFBUSxDQUFDLFFBQVEsRUFBRTthQUMxQjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0b0hleCwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IGZyb21CYXNlNjQgfSBmcm9tICdAY29zbWpzL2VuY29kaW5nJztcbmltcG9ydCBzaG91bGQgZnJvbSAnc2hvdWxkJztcblxuaW1wb3J0IHsgQml0R29BUEkgfSBmcm9tICdAYml0Z28vc2RrLWFwaSc7XG5pbXBvcnQgeyBUZXN0Qml0R28sIFRlc3RCaXRHb0FQSSB9IGZyb20gJ0BiaXRnby9zZGstdGVzdCc7XG5pbXBvcnQgeyBDb3JldW0sIFRjb3JldW0gfSBmcm9tICcuLi8uLi8uLi9zcmMnO1xuaW1wb3J0ICogYXMgdGVzdERhdGEgZnJvbSAnLi4vLi4vcmVzb3VyY2VzL3Rjb3JldW0nO1xuXG5kZXNjcmliZSgnQ29yZXVtIERlbGVnYXRlIHR4biBCdWlsZGVyJywgKCkgPT4ge1xuICBsZXQgYml0Z286IFRlc3RCaXRHb0FQSTtcbiAgbGV0IGJhc2Vjb2luO1xuICBsZXQgZmFjdG9yeTtcbiAgbGV0IHRlc3RUeDtcbiAgYmVmb3JlKGZ1bmN0aW9uICgpIHtcbiAgICBiaXRnbyA9IFRlc3RCaXRHby5kZWNvcmF0ZShCaXRHb0FQSSwgeyBlbnY6ICdtb2NrJyB9KTtcbiAgICBiaXRnby5zYWZlUmVnaXN0ZXIoJ2NvcmV1bScsIENvcmV1bS5jcmVhdGVJbnN0YW5jZSk7XG4gICAgYml0Z28uc2FmZVJlZ2lzdGVyKCd0Y29yZXVtJywgVGNvcmV1bS5jcmVhdGVJbnN0YW5jZSk7XG4gICAgYml0Z28uaW5pdGlhbGl6ZVRlc3RWYXJzKCk7XG4gICAgYmFzZWNvaW4gPSBiaXRnby5jb2luKCd0Y29yZXVtJyk7XG4gICAgZmFjdG9yeSA9IGJhc2Vjb2luLmdldEJ1aWxkZXIoKTtcbiAgICB0ZXN0VHggPSB0ZXN0RGF0YS5URVNUX0RFTEVHQVRFX1RYO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIGJ1aWxkIGEgRGVsZWdhdGUgdHggd2l0aCBzaWduYXR1cmUnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgdHhCdWlsZGVyID0gZmFjdG9yeS5nZXRTdGFraW5nQWN0aXZhdGVCdWlsZGVyKCk7XG4gICAgdHhCdWlsZGVyLnNlcXVlbmNlKHRlc3RUeC5zZXF1ZW5jZSk7XG4gICAgdHhCdWlsZGVyLmdhc0J1ZGdldCh0ZXN0VHguZ2FzQnVkZ2V0KTtcbiAgICB0eEJ1aWxkZXIubWVzc2FnZXMoW3Rlc3RUeC5zZW5kTWVzc2FnZS52YWx1ZV0pO1xuICAgIHR4QnVpbGRlci5wdWJsaWNLZXkodG9IZXgoZnJvbUJhc2U2NCh0ZXN0VHgucHViS2V5KSkpO1xuICAgIHR4QnVpbGRlci5hZGRTaWduYXR1cmUoeyBwdWI6IHRvSGV4KGZyb21CYXNlNjQodGVzdFR4LnB1YktleSkpIH0sIEJ1ZmZlci5mcm9tKHRlc3RUeC5zaWduYXR1cmUsICdiYXNlNjQnKSk7XG5cbiAgICBjb25zdCB0eCA9IGF3YWl0IHR4QnVpbGRlci5idWlsZCgpO1xuICAgIGNvbnN0IGpzb24gPSBhd2FpdCAoYXdhaXQgdHhCdWlsZGVyLmJ1aWxkKCkpLnRvSnNvbigpO1xuICAgIHNob3VsZC5lcXVhbCh0eC50eXBlLCBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ0FjdGl2YXRlKTtcbiAgICBzaG91bGQuZGVlcEVxdWFsKGpzb24uZ2FzQnVkZ2V0LCB0ZXN0VHguZ2FzQnVkZ2V0KTtcbiAgICBzaG91bGQuZGVlcEVxdWFsKGpzb24uc2VuZE1lc3NhZ2VzLCBbdGVzdFR4LnNlbmRNZXNzYWdlXSk7XG4gICAgc2hvdWxkLmRlZXBFcXVhbChqc29uLnB1YmxpY0tleSwgdG9IZXgoZnJvbUJhc2U2NCh0ZXN0VHgucHViS2V5KSkpO1xuICAgIHNob3VsZC5kZWVwRXF1YWwoanNvbi5zZXF1ZW5jZSwgdGVzdFR4LnNlcXVlbmNlKTtcbiAgICBjb25zdCByYXdUeCA9IHR4LnRvQnJvYWRjYXN0Rm9ybWF0KCk7XG4gICAgc2hvdWxkLmVxdWFsKHJhd1R4LCB0ZXN0VHguc2lnbmVkVHhCYXNlNjQpO1xuICAgIHNob3VsZC5kZWVwRXF1YWwodHguaW5wdXRzLCBbXG4gICAgICB7XG4gICAgICAgIGFkZHJlc3M6IHRlc3RUeC5kZWxlZ2F0b3IsXG4gICAgICAgIHZhbHVlOiB0ZXN0VHguc2VuZE1lc3NhZ2UudmFsdWUuYW1vdW50LmFtb3VudCxcbiAgICAgICAgY29pbjogYmFzZWNvaW4uZ2V0Q2hhaW4oKSxcbiAgICAgIH0sXG4gICAgXSk7XG4gICAgc2hvdWxkLmRlZXBFcXVhbCh0eC5vdXRwdXRzLCBbXG4gICAgICB7XG4gICAgICAgIGFkZHJlc3M6IHRlc3RUeC52YWxpZGF0b3IsXG4gICAgICAgIHZhbHVlOiB0ZXN0VHguc2VuZE1lc3NhZ2UudmFsdWUuYW1vdW50LmFtb3VudCxcbiAgICAgICAgY29pbjogYmFzZWNvaW4uZ2V0Q2hhaW4oKSxcbiAgICAgIH0sXG4gICAgXSk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgYnVpbGQgYSBEZWxlZ2F0ZSB0eCB3aXRob3V0IHNpZ25hdHVyZScsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCB0eEJ1aWxkZXIgPSBmYWN0b3J5LmdldFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIoKTtcbiAgICB0eEJ1aWxkZXIuc2VxdWVuY2UodGVzdFR4LnNlcXVlbmNlKTtcbiAgICB0eEJ1aWxkZXIuZ2FzQnVkZ2V0KHRlc3RUeC5nYXNCdWRnZXQpO1xuICAgIHR4QnVpbGRlci5tZXNzYWdlcyhbdGVzdFR4LnNlbmRNZXNzYWdlLnZhbHVlXSk7XG4gICAgdHhCdWlsZGVyLnB1YmxpY0tleSh0b0hleChmcm9tQmFzZTY0KHRlc3RUeC5wdWJLZXkpKSk7XG4gICAgY29uc3QgdHggPSBhd2FpdCB0eEJ1aWxkZXIuYnVpbGQoKTtcbiAgICBjb25zdCBqc29uID0gYXdhaXQgKGF3YWl0IHR4QnVpbGRlci5idWlsZCgpKS50b0pzb24oKTtcbiAgICBzaG91bGQuZXF1YWwodHgudHlwZSwgVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdBY3RpdmF0ZSk7XG4gICAgc2hvdWxkLmRlZXBFcXVhbChqc29uLmdhc0J1ZGdldCwgdGVzdFR4Lmdhc0J1ZGdldCk7XG4gICAgc2hvdWxkLmRlZXBFcXVhbChqc29uLnNlbmRNZXNzYWdlcywgW3Rlc3RUeC5zZW5kTWVzc2FnZV0pO1xuICAgIHNob3VsZC5kZWVwRXF1YWwoanNvbi5wdWJsaWNLZXksIHRvSGV4KGZyb21CYXNlNjQodGVzdFR4LnB1YktleSkpKTtcbiAgICBzaG91bGQuZGVlcEVxdWFsKGpzb24uc2VxdWVuY2UsIHRlc3RUeC5zZXF1ZW5jZSk7XG4gICAgdHgudG9Ccm9hZGNhc3RGb3JtYXQoKTtcbiAgICBzaG91bGQuZGVlcEVxdWFsKHR4LmlucHV0cywgW1xuICAgICAge1xuICAgICAgICBhZGRyZXNzOiB0ZXN0VHguZGVsZWdhdG9yLFxuICAgICAgICB2YWx1ZTogdGVzdFR4LnNlbmRNZXNzYWdlLnZhbHVlLmFtb3VudC5hbW91bnQsXG4gICAgICAgIGNvaW46IGJhc2Vjb2luLmdldENoYWluKCksXG4gICAgICB9LFxuICAgIF0pO1xuICAgIHNob3VsZC5kZWVwRXF1YWwodHgub3V0cHV0cywgW1xuICAgICAge1xuICAgICAgICBhZGRyZXNzOiB0ZXN0VHgudmFsaWRhdG9yLFxuICAgICAgICB2YWx1ZTogdGVzdFR4LnNlbmRNZXNzYWdlLnZhbHVlLmFtb3VudC5hbW91bnQsXG4gICAgICAgIGNvaW46IGJhc2Vjb2luLmdldENoYWluKCksXG4gICAgICB9LFxuICAgIF0pO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHNpZ24gYSBEZWxlZ2F0ZSB0eCcsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCB0eEJ1aWxkZXIgPSBmYWN0b3J5LmdldFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIoKTtcbiAgICB0eEJ1aWxkZXIuc2VxdWVuY2UodGVzdFR4LnNlcXVlbmNlKTtcbiAgICB0eEJ1aWxkZXIuZ2FzQnVkZ2V0KHRlc3RUeC5nYXNCdWRnZXQpO1xuICAgIHR4QnVpbGRlci5tZXNzYWdlcyhbdGVzdFR4LnNlbmRNZXNzYWdlLnZhbHVlXSk7XG4gICAgdHhCdWlsZGVyLmFjY291bnROdW1iZXIodGVzdFR4LmFjY291bnROdW1iZXIpO1xuICAgIHR4QnVpbGRlci5jaGFpbklkKHRlc3RUeC5jaGFpbklkKTtcbiAgICB0eEJ1aWxkZXIuc2lnbih7IGtleTogdG9IZXgoZnJvbUJhc2U2NCh0ZXN0VHgucHJpdmF0ZUtleSkpIH0pO1xuICAgIGNvbnN0IHR4ID0gYXdhaXQgdHhCdWlsZGVyLmJ1aWxkKCk7XG4gICAgY29uc3QganNvbiA9IGF3YWl0IChhd2FpdCB0eEJ1aWxkZXIuYnVpbGQoKSkudG9Kc29uKCk7XG4gICAgc2hvdWxkLmVxdWFsKHR4LnR5cGUsIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nQWN0aXZhdGUpO1xuICAgIHNob3VsZC5kZWVwRXF1YWwoanNvbi5nYXNCdWRnZXQsIHRlc3RUeC5nYXNCdWRnZXQpO1xuICAgIHNob3VsZC5kZWVwRXF1YWwoanNvbi5zZW5kTWVzc2FnZXMsIFt0ZXN0VHguc2VuZE1lc3NhZ2VdKTtcbiAgICBzaG91bGQuZGVlcEVxdWFsKGpzb24ucHVibGljS2V5LCB0b0hleChmcm9tQmFzZTY0KHRlc3RUeC5wdWJLZXkpKSk7XG4gICAgc2hvdWxkLmRlZXBFcXVhbChqc29uLnNlcXVlbmNlLCB0ZXN0VHguc2VxdWVuY2UpO1xuICAgIGNvbnN0IHJhd1R4ID0gdHgudG9Ccm9hZGNhc3RGb3JtYXQoKTtcbiAgICBzaG91bGQuZXF1YWwodHguc2lnbmF0dXJlWzBdLCB0b0hleChmcm9tQmFzZTY0KHRlc3RUeC5zaWduYXR1cmUpKSk7XG4gICAgc2hvdWxkLmVxdWFsKHJhd1R4LCB0ZXN0VHguc2lnbmVkVHhCYXNlNjQpO1xuICAgIHNob3VsZC5kZWVwRXF1YWwodHguaW5wdXRzLCBbXG4gICAgICB7XG4gICAgICAgIGFkZHJlc3M6IHRlc3RUeC5kZWxlZ2F0b3IsXG4gICAgICAgIHZhbHVlOiB0ZXN0VHguc2VuZE1lc3NhZ2UudmFsdWUuYW1vdW50LmFtb3VudCxcbiAgICAgICAgY29pbjogYmFzZWNvaW4uZ2V0Q2hhaW4oKSxcbiAgICAgIH0sXG4gICAgXSk7XG4gICAgc2hvdWxkLmRlZXBFcXVhbCh0eC5vdXRwdXRzLCBbXG4gICAgICB7XG4gICAgICAgIGFkZHJlc3M6IHRlc3RUeC52YWxpZGF0b3IsXG4gICAgICAgIHZhbHVlOiB0ZXN0VHguc2VuZE1lc3NhZ2UudmFsdWUuYW1vdW50LmFtb3VudCxcbiAgICAgICAgY29pbjogYmFzZWNvaW4uZ2V0Q2hhaW4oKSxcbiAgICAgIH0sXG4gICAgXSk7XG4gIH0pO1xufSk7XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StakingDeactivateBuilder.d.ts","sourceRoot":"","sources":["../../../../test/unit/transactionBuilder/StakingDeactivateBuilder.ts"],"names":[],"mappings":""}
|