@bitgo-beta/sdk-coin-cosmos 1.0.1-alpha.7 → 1.0.1-alpha.71

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.
Files changed (59) hide show
  1. package/dist/src/cosmosSharedCoin.d.ts +28 -3
  2. package/dist/src/cosmosSharedCoin.d.ts.map +1 -1
  3. package/dist/src/cosmosSharedCoin.js +69 -5
  4. package/dist/src/index.d.ts +3 -1
  5. package/dist/src/index.d.ts.map +1 -1
  6. package/dist/src/index.js +18 -4
  7. package/dist/src/lib/index.d.ts +5 -0
  8. package/dist/src/lib/index.d.ts.map +1 -0
  9. package/dist/src/lib/index.js +13 -0
  10. package/dist/src/lib/keyPair.d.ts +19 -0
  11. package/dist/src/lib/keyPair.d.ts.map +1 -0
  12. package/dist/src/lib/keyPair.js +38 -0
  13. package/dist/src/lib/transactionBuilderFactory.d.ts +32 -0
  14. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -0
  15. package/dist/src/lib/transactionBuilderFactory.js +81 -0
  16. package/dist/src/lib/utils.d.ts +19 -0
  17. package/dist/src/lib/utils.d.ts.map +1 -0
  18. package/dist/src/lib/utils.js +48 -0
  19. package/dist/src/register.d.ts +7 -0
  20. package/dist/src/register.d.ts.map +1 -0
  21. package/dist/src/register.js +17 -0
  22. package/dist/test/resources/mantra.d.ts +70 -0
  23. package/dist/test/resources/mantra.d.ts.map +1 -0
  24. package/dist/test/resources/mantra.js +80 -0
  25. package/dist/test/testUtils/generators.d.ts +54 -0
  26. package/dist/test/testUtils/generators.d.ts.map +1 -0
  27. package/dist/test/testUtils/generators.js +183 -0
  28. package/dist/test/testUtils/index.d.ts +8 -0
  29. package/dist/test/testUtils/index.d.ts.map +1 -0
  30. package/dist/test/testUtils/index.js +25 -0
  31. package/dist/test/testUtils/types.d.ts +203 -0
  32. package/dist/test/testUtils/types.d.ts.map +1 -0
  33. package/dist/test/testUtils/types.js +7 -0
  34. package/dist/test/testUtils/utils.d.ts +43 -0
  35. package/dist/test/testUtils/utils.d.ts.map +1 -0
  36. package/dist/test/testUtils/utils.js +122 -0
  37. package/dist/test/unit/cosmosSharedCoin.d.ts +2 -0
  38. package/dist/test/unit/cosmosSharedCoin.d.ts.map +1 -0
  39. package/dist/test/unit/cosmosSharedCoin.js +300 -0
  40. package/dist/test/unit/keyPair.d.ts +2 -0
  41. package/dist/test/unit/keyPair.d.ts.map +1 -0
  42. package/dist/test/unit/keyPair.js +73 -0
  43. package/dist/test/unit/register.d.ts +2 -0
  44. package/dist/test/unit/register.d.ts.map +1 -0
  45. package/dist/test/unit/register.js +48 -0
  46. package/dist/test/unit/transactionBuilder/transactionBuilder.d.ts +2 -0
  47. package/dist/test/unit/transactionBuilder/transactionBuilder.d.ts.map +1 -0
  48. package/dist/test/unit/transactionBuilder/transactionBuilder.js +46 -0
  49. package/dist/test/unit/transactionBuilder/transferBuilder.d.ts +2 -0
  50. package/dist/test/unit/transactionBuilder/transferBuilder.d.ts.map +1 -0
  51. package/dist/test/unit/transactionBuilder/transferBuilder.js +186 -0
  52. package/dist/test/unit/utils.d.ts +2 -0
  53. package/dist/test/unit/utils.d.ts.map +1 -0
  54. package/dist/test/unit/utils.js +82 -0
  55. package/dist/tsconfig.tsbuildinfo +1 -0
  56. package/package.json +18 -6
  57. package/.eslintignore +0 -5
  58. package/.mocharc.yml +0 -8
  59. package/CHANGELOG.md +0 -10
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ /**
3
+ * Mantra test data for the sdk-coin-cosmos module
4
+ * This file extends the base configuration with mantra-specific data
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.mantra = exports.blockHashes = exports.TEST_TX_WITH_MEMO = exports.TEST_SEND_MANY_TX = exports.TEST_SEND_TX2 = exports.TEST_SEND_TX = exports.DEFAULTS = exports.chainConfig = void 0;
8
+ const testUtils_1 = require("../testUtils");
9
+ exports.chainConfig = {
10
+ mainnetName: 'Mantra',
11
+ mainnetCoin: 'mantra',
12
+ testnetName: 'Testnet Mantra',
13
+ testnetCoin: 'tmantra',
14
+ family: 'mantra',
15
+ decimalPlaces: 6,
16
+ baseDenom: 'uom',
17
+ chainId: 'mantra-dukong-1',
18
+ addressPrefix: 'mantra',
19
+ validatorPrefix: 'mantravaloper',
20
+ };
21
+ exports.DEFAULTS = {
22
+ senderAddress: 'mantra1cyyzpxplxdzkeea7kwsydadg87357qna5d0frc',
23
+ pubKey: 'AuwYyCUBxQiBGSUWebU46c+OrlApVsyGLHd4qhSDZeiG',
24
+ privateKey: 'SNI8xBejBnTpB6JAPxCfCC2S4ZeCPQLmpCPGrrjkEgQ=',
25
+ recipientAddress1: 'mantra18s5lynnmx37hq4wlrw9gdn68sg2uxp5rtxnwey',
26
+ recipientAddress2: 'mantra1c6mj5v5wpjl6zs7lz0l6dlv3r4ccqaa4lax9ka',
27
+ sendMessageTypeUrl: '/cosmos.bank.v1beta1.MsgSend',
28
+ sendAmount: '1000',
29
+ feeAmount: '8000',
30
+ gasLimit: 200000,
31
+ validatorAddress1: 'mantravaloper1q8mgs55hfgkm7d5rret439997x87s2ek2r83q2',
32
+ validatorAddress2: 'mantravaloper1ea4hlqfskjvn0ldenw8gv7jjdzrljcchl7deme',
33
+ };
34
+ exports.TEST_SEND_TX = {
35
+ hash: '3926020FD54D0D70BF0979CE9B2495AAF28E7B91C05270B54F670613A72CAA60',
36
+ signature: 'zCJ6BW0ykPUjw+ElOIo53ZMw5cBMrRMyAnKCB0jjSyd4eH2bOFvliBpcKD9POeoxFM0NkraPwx5sAUitO8aqdg==',
37
+ signedTxBase64: 'Co4BCosBChwvY29zbW9zLmJhbmsudjFiZXRhMS5Nc2dTZW5kEmsKLW1hbnRyYTFjeXl6cHhwbHhkemtlZWE3a3dzeWRhZGc4NzM1N3FuYTVkMGZyYxItbWFudHJhMThzNWx5bm5teDM3aHE0d2xydzlnZG42OHNnMnV4cDVydHhud2V5GgsKA3VvbRIEMTAwMBJlClAKRgofL2Nvc21vcy5jcnlwdG8uc2VjcDI1NmsxLlB1YktleRIjCiEC7BjIJQHFCIEZJRZ5tTjpz46uUClWzIYsd3iqFINl6IYSBAoCCAEYNRIRCgsKA3VvbRIEODAwMBDAmgwaQMwiegVtMpD1I8PhJTiKOd2TMOXATK0TMgJyggdI40sneHh9mzhb5YgaXCg/TznqMRTNDZK2j8MebAFIrTvGqnY=',
38
+ accountNumber: 53,
39
+ sequence: 53,
40
+ sendAmount: '1000',
41
+ };
42
+ exports.TEST_SEND_TX2 = {
43
+ hash: '2D8B81526D385C5C602DE5E3F16E16733EFD40113C39CA1FEDA5E9213AEF6B52',
44
+ signature: 'Ilon2DaoiCJdDGLcWI1rO35iGrlZsClshzwAmnmTfdhWB3rV27gKSH+1cPVYtSE6dT5iqA4qnOMC75mRtgdMFA==',
45
+ signedTxBase64: 'CosBCogBChwvY29zbW9zLmJhbmsudjFiZXRhMS5Nc2dTZW5kEmgKLW1hbnRyYTFjeXl6cHhwbHhkemtlZWE3a3dzeWRhZGc4NzM1N3FuYTVkMGZyYxItbWFudHJhMThzNWx5bm5teDM3aHE0d2xydzlnZG42OHNnMnV4cDVydHhud2V5GggKA3VvbRIBMRJlClAKRgofL2Nvc21vcy5jcnlwdG8uc2VjcDI1NmsxLlB1YktleRIjCiEC7BjIJQHFCIEZJRZ5tTjpz46uUClWzIYsd3iqFINl6IYSBAoCCAEYOhIRCgsKA3VvbRIEODAwMBDAmgwaQCJaJ9g2qIgiXQxi3FiNazt+Yhq5WbApbIc8AJp5k33YVgd61du4Ckh/tXD1WLUhOnU+YqgOKpzjAu+ZkbYHTBQ=',
46
+ accountNumber: 58,
47
+ sequence: 58,
48
+ sendAmount: '1',
49
+ };
50
+ exports.TEST_SEND_MANY_TX = {
51
+ hash: 'C46D043ECA9D2EE99751F50C7583D39D91B0F8FDF48BCE2B78F092B281A1B847',
52
+ signature: '2QHmgov/0C6fl1HVPz+UEmcJthMvrqB2bAH0NfNJl/orjmAxdB67uhVhBZxqSWhxzI+va1htT+LNUbtxeV9I1Q==',
53
+ signedTxBase64: 'CpkCCosBChwvY29zbW9zLmJhbmsudjFiZXRhMS5Nc2dTZW5kEmsKLW1hbnRyYTFjeXl6cHhwbHhkemtlZWE3a3dzeWRhZGc4NzM1N3FuYTVkMGZyYxItbWFudHJhMThzNWx5bm5teDM3aHE0d2xydzlnZG42OHNnMnV4cDVydHhud2V5GgsKA3VvbRIEMTAwMAqIAQocL2Nvc21vcy5iYW5rLnYxYmV0YTEuTXNnU2VuZBJoCi1tYW50cmExY3l5enB4cGx4ZHprZWVhN2t3c3lkYWRnODczNTdxbmE1ZDBmcmMSLW1hbnRyYTE4czVseW5ubXgzN2hxNHdscnc5Z2RuNjhzZzJ1eHA1cnR4bndleRoICgN1b20SATISZQpQCkYKHy9jb3Ntb3MuY3J5cHRvLnNlY3AyNTZrMS5QdWJLZXkSIwohAuwYyCUBxQiBGSUWebU46c+OrlApVsyGLHd4qhSDZeiGEgQKAggBGDYSEQoLCgN1b20SBDgwMDAQwJoMGkDZAeaCi//QLp+XUdU/P5QSZwm2Ey+uoHZsAfQ180mX+iuOYDF0Hru6FWEFnGpJaHHMj69rWG1P4s1Ru3F5X0jV',
54
+ accountNumber: 54,
55
+ sequence: 54,
56
+ sendAmount1: '1',
57
+ sendAmount2: '2',
58
+ };
59
+ exports.TEST_TX_WITH_MEMO = {
60
+ hash: 'FBE31E5E5DFD1E346ED2FD7E2AC6A8183AB059F9E5B8293E6ED88348B321B8A6',
61
+ signature: 'Q/n0dY74JoFl4JrVb/H/VUm5ji70rygMYr7kdLKZ9yJp3PW5j/usCypqF1tBIqTwBRvDfVXqx8Tat4W2LEkc/A==',
62
+ signedTxBase64: 'CqkBCooBChwvY29zbW9zLmJhbmsudjFiZXRhMS5Nc2dTZW5kEmoKLW1hbnRyYTFjeXl6cHhwbHhkemtlZWE3a3dzeWRhZGc4NzM1N3FuYTVkMGZyYxItbWFudHJhMThzNWx5bm5teDM3aHE0d2xydzlnZG42OHNnMnV4cDVydHhud2V5GgoKA3VvbRIDNTAwEhpUZXN0MTIzQWxwaGFudW1lcmljTWVtbzQ1NhJlClAKRgofL2Nvc21vcy5jcnlwdG8uc2VjcDI1NmsxLlB1YktleRIjCiEC7BjIJQHFCIEZJRZ5tTjpz46uUClWzIYsd3iqFINl6IYSBAoCCAEYNxIRCgsKA3VvbRIEODAwMBDAmgwaQEP59HWO+CaBZeCa1W/x/1VJuY4u9K8oDGK+5HSymfciadz1uY/7rAsqahdbQSKk8AUbw31V6sfE2reFtixJHPw=',
63
+ accountNumber: 55,
64
+ sequence: 55,
65
+ sendAmount: '500',
66
+ memo: 'Test123AlphanumericMemo456',
67
+ };
68
+ exports.blockHashes = {
69
+ hash1: '4E24C00A10E70F54B30BAFBF5B5545882740BC2894739017C284978D827FE196',
70
+ hash2: '98DD4400BF70DC8B2214B3E38E1292ECEF2114C78C26A50B0BFED25DA2E8D4E7',
71
+ };
72
+ // Generate the complete cronos test data
73
+ exports.mantra = (0, testUtils_1.generateCoinData)(exports.chainConfig, exports.DEFAULTS, exports.blockHashes, {
74
+ TEST_SEND_TX: exports.TEST_SEND_TX,
75
+ TEST_SEND_TX2: exports.TEST_SEND_TX2,
76
+ TEST_SEND_MANY_TX: exports.TEST_SEND_MANY_TX,
77
+ TEST_TX_WITH_MEMO: exports.TEST_TX_WITH_MEMO,
78
+ });
79
+ exports.default = exports.mantra;
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFudHJhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdGVzdC9yZXNvdXJjZXMvbWFudHJhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7O0dBR0c7OztBQUVILDRDQUFnRDtBQUVuQyxRQUFBLFdBQVcsR0FBRztJQUN6QixXQUFXLEVBQUUsUUFBUTtJQUNyQixXQUFXLEVBQUUsUUFBUTtJQUNyQixXQUFXLEVBQUUsZ0JBQWdCO0lBQzdCLFdBQVcsRUFBRSxTQUFTO0lBQ3RCLE1BQU0sRUFBRSxRQUFRO0lBQ2hCLGFBQWEsRUFBRSxDQUFDO0lBQ2hCLFNBQVMsRUFBRSxLQUFLO0lBQ2hCLE9BQU8sRUFBRSxpQkFBaUI7SUFDMUIsYUFBYSxFQUFFLFFBQVE7SUFDdkIsZUFBZSxFQUFFLGVBQWU7Q0FDakMsQ0FBQztBQUVXLFFBQUEsUUFBUSxHQUFHO0lBQ3RCLGFBQWEsRUFBRSwrQ0FBK0M7SUFDOUQsTUFBTSxFQUFFLDhDQUE4QztJQUN0RCxVQUFVLEVBQUUsOENBQThDO0lBQzFELGlCQUFpQixFQUFFLCtDQUErQztJQUNsRSxpQkFBaUIsRUFBRSwrQ0FBK0M7SUFDbEUsa0JBQWtCLEVBQUUsOEJBQThCO0lBQ2xELFVBQVUsRUFBRSxNQUFNO0lBQ2xCLFNBQVMsRUFBRSxNQUFNO0lBQ2pCLFFBQVEsRUFBRSxNQUFNO0lBQ2hCLGlCQUFpQixFQUFFLHNEQUFzRDtJQUN6RSxpQkFBaUIsRUFBRSxzREFBc0Q7Q0FDMUUsQ0FBQztBQUVXLFFBQUEsWUFBWSxHQUFHO0lBQzFCLElBQUksRUFBRSxrRUFBa0U7SUFDeEUsU0FBUyxFQUFFLDBGQUEwRjtJQUNyRyxjQUFjLEVBQ1osc2FBQXNhO0lBQ3hhLGFBQWEsRUFBRSxFQUFFO0lBQ2pCLFFBQVEsRUFBRSxFQUFFO0lBQ1osVUFBVSxFQUFFLE1BQU07Q0FDbkIsQ0FBQztBQUVXLFFBQUEsYUFBYSxHQUFHO0lBQzNCLElBQUksRUFBRSxrRUFBa0U7SUFDeEUsU0FBUyxFQUFFLDBGQUEwRjtJQUNyRyxjQUFjLEVBQ1osa2FBQWthO0lBQ3BhLGFBQWEsRUFBRSxFQUFFO0lBQ2pCLFFBQVEsRUFBRSxFQUFFO0lBQ1osVUFBVSxFQUFFLEdBQUc7Q0FDaEIsQ0FBQztBQUVXLFFBQUEsaUJBQWlCLEdBQUc7SUFDL0IsSUFBSSxFQUFFLGtFQUFrRTtJQUN4RSxTQUFTLEVBQUUsMEZBQTBGO0lBQ3JHLGNBQWMsRUFDWiw4bEJBQThsQjtJQUNobUIsYUFBYSxFQUFFLEVBQUU7SUFDakIsUUFBUSxFQUFFLEVBQUU7SUFDWixXQUFXLEVBQUUsR0FBRztJQUNoQixXQUFXLEVBQUUsR0FBRztDQUNqQixDQUFDO0FBRVcsUUFBQSxpQkFBaUIsR0FBRztJQUMvQixJQUFJLEVBQUUsa0VBQWtFO0lBQ3hFLFNBQVMsRUFBRSwwRkFBMEY7SUFDckcsY0FBYyxFQUNaLDBjQUEwYztJQUM1YyxhQUFhLEVBQUUsRUFBRTtJQUNqQixRQUFRLEVBQUUsRUFBRTtJQUNaLFVBQVUsRUFBRSxLQUFLO0lBQ2pCLElBQUksRUFBRSw0QkFBNEI7Q0FDbkMsQ0FBQztBQUVXLFFBQUEsV0FBVyxHQUFHO0lBQ3pCLEtBQUssRUFBRSxrRUFBa0U7SUFDekUsS0FBSyxFQUFFLGtFQUFrRTtDQUMxRSxDQUFDO0FBRUYseUNBQXlDO0FBQzVCLFFBQUEsTUFBTSxHQUFHLElBQUEsNEJBQWdCLEVBQUMsbUJBQVcsRUFBRSxnQkFBUSxFQUFFLG1CQUFXLEVBQUU7SUFDekUsWUFBWSxFQUFaLG9CQUFZO0lBQ1osYUFBYSxFQUFiLHFCQUFhO0lBQ2IsaUJBQWlCLEVBQWpCLHlCQUFpQjtJQUNqQixpQkFBaUIsRUFBakIseUJBQWlCO0NBQ2xCLENBQUMsQ0FBQztBQUVILGtCQUFlLGNBQU0sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogTWFudHJhIHRlc3QgZGF0YSBmb3IgdGhlIHNkay1jb2luLWNvc21vcyBtb2R1bGVcbiAqIFRoaXMgZmlsZSBleHRlbmRzIHRoZSBiYXNlIGNvbmZpZ3VyYXRpb24gd2l0aCBtYW50cmEtc3BlY2lmaWMgZGF0YVxuICovXG5cbmltcG9ydCB7IGdlbmVyYXRlQ29pbkRhdGEgfSBmcm9tICcuLi90ZXN0VXRpbHMnO1xuXG5leHBvcnQgY29uc3QgY2hhaW5Db25maWcgPSB7XG4gIG1haW5uZXROYW1lOiAnTWFudHJhJyxcbiAgbWFpbm5ldENvaW46ICdtYW50cmEnLFxuICB0ZXN0bmV0TmFtZTogJ1Rlc3RuZXQgTWFudHJhJyxcbiAgdGVzdG5ldENvaW46ICd0bWFudHJhJyxcbiAgZmFtaWx5OiAnbWFudHJhJyxcbiAgZGVjaW1hbFBsYWNlczogNixcbiAgYmFzZURlbm9tOiAndW9tJyxcbiAgY2hhaW5JZDogJ21hbnRyYS1kdWtvbmctMScsXG4gIGFkZHJlc3NQcmVmaXg6ICdtYW50cmEnLFxuICB2YWxpZGF0b3JQcmVmaXg6ICdtYW50cmF2YWxvcGVyJyxcbn07XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUUyA9IHtcbiAgc2VuZGVyQWRkcmVzczogJ21hbnRyYTFjeXl6cHhwbHhkemtlZWE3a3dzeWRhZGc4NzM1N3FuYTVkMGZyYycsXG4gIHB1YktleTogJ0F1d1l5Q1VCeFFpQkdTVVdlYlU0NmMrT3JsQXBWc3lHTEhkNHFoU0RaZWlHJyxcbiAgcHJpdmF0ZUtleTogJ1NOSTh4QmVqQm5UcEI2SkFQeENmQ0MyUzRaZUNQUUxtcENQR3JyamtFZ1E9JyxcbiAgcmVjaXBpZW50QWRkcmVzczE6ICdtYW50cmExOHM1bHlubm14MzdocTR3bHJ3OWdkbjY4c2cydXhwNXJ0eG53ZXknLFxuICByZWNpcGllbnRBZGRyZXNzMjogJ21hbnRyYTFjNm1qNXY1d3BqbDZ6czdsejBsNmRsdjNyNGNjcWFhNGxheDlrYScsXG4gIHNlbmRNZXNzYWdlVHlwZVVybDogJy9jb3Ntb3MuYmFuay52MWJldGExLk1zZ1NlbmQnLFxuICBzZW5kQW1vdW50OiAnMTAwMCcsXG4gIGZlZUFtb3VudDogJzgwMDAnLFxuICBnYXNMaW1pdDogMjAwMDAwLFxuICB2YWxpZGF0b3JBZGRyZXNzMTogJ21hbnRyYXZhbG9wZXIxcThtZ3M1NWhmZ2ttN2Q1cnJldDQzOTk5N3g4N3MyZWsycjgzcTInLFxuICB2YWxpZGF0b3JBZGRyZXNzMjogJ21hbnRyYXZhbG9wZXIxZWE0aGxxZnNranZuMGxkZW53OGd2N2pqZHpybGpjY2hsN2RlbWUnLFxufTtcblxuZXhwb3J0IGNvbnN0IFRFU1RfU0VORF9UWCA9IHtcbiAgaGFzaDogJzM5MjYwMjBGRDU0RDBENzBCRjA5NzlDRTlCMjQ5NUFBRjI4RTdCOTFDMDUyNzBCNTRGNjcwNjEzQTcyQ0FBNjAnLFxuICBzaWduYXR1cmU6ICd6Q0o2QlcweWtQVWp3K0VsT0lvNTNaTXc1Y0JNclJNeUFuS0NCMGpqU3lkNGVIMmJPRnZsaUJwY0tEOVBPZW94Rk0wTmtyYVB3eDVzQVVpdE84YXFkZz09JyxcbiAgc2lnbmVkVHhCYXNlNjQ6XG4gICAgJ0NvNEJDb3NCQ2h3dlkyOXpiVzl6TG1KaGJtc3VkakZpWlhSaE1TNU5jMmRUWlc1a0Vtc0tMVzFoYm5SeVlURmplWGw2Y0hod2JIaGtlbXRsWldFM2EzZHplV1JoWkdjNE56TTFOM0Z1WVRWa01HWnlZeEl0YldGdWRISmhNVGh6Tld4NWJtNXRlRE0zYUhFMGQyeHlkemxuWkc0Mk9ITm5NblY0Y0RWeWRIaHVkMlY1R2dzS0EzVnZiUklFTVRBd01CSmxDbEFLUmdvZkwyTnZjMjF2Y3k1amNubHdkRzh1YzJWamNESTFObXN4TGxCMVlrdGxlUklqQ2lFQzdCaklKUUhGQ0lFWkpSWjV0VGpwejQ2dVVDbFd6SVlzZDNpcUZJTmw2SVlTQkFvQ0NBRVlOUklSQ2dzS0EzVnZiUklFT0RBd01CREFtZ3dhUU13aWVnVnRNcEQxSThQaEpUaUtPZDJUTU9YQVRLMFRNZ0p5Z2dkSTQwc25lSGg5bXpoYjVZZ2FYQ2cvVHpucU1SVE5EWksyajhNZWJBRklyVHZHcW5ZPScsXG4gIGFjY291bnROdW1iZXI6IDUzLFxuICBzZXF1ZW5jZTogNTMsXG4gIHNlbmRBbW91bnQ6ICcxMDAwJyxcbn07XG5cbmV4cG9ydCBjb25zdCBURVNUX1NFTkRfVFgyID0ge1xuICBoYXNoOiAnMkQ4QjgxNTI2RDM4NUM1QzYwMkRFNUUzRjE2RTE2NzMzRUZENDAxMTNDMzlDQTFGRURBNUU5MjEzQUVGNkI1MicsXG4gIHNpZ25hdHVyZTogJ0lsb24yRGFvaUNKZERHTGNXSTFyTzM1aUdybFpzQ2xzaHp3QW1ubVRmZGhXQjNyVjI3Z0tTSCsxY1BWWXRTRTZkVDVpcUE0cW5PTUM3NW1SdGdkTUZBPT0nLFxuICBzaWduZWRUeEJhc2U2NDpcbiAgICAnQ29zQkNvZ0JDaHd2WTI5emJXOXpMbUpoYm1zdWRqRmlaWFJoTVM1TmMyZFRaVzVrRW1nS0xXMWhiblJ5WVRGamVYbDZjSGh3Ykhoa2VtdGxaV0UzYTNkemVXUmhaR2M0TnpNMU4zRnVZVFZrTUdaeVl4SXRiV0Z1ZEhKaE1UaHpOV3g1Ym01dGVETTNhSEUwZDJ4eWR6bG5aRzQyT0hObk1uVjRjRFZ5ZEhodWQyVjVHZ2dLQTNWdmJSSUJNUkpsQ2xBS1Jnb2ZMMk52YzIxdmN5NWpjbmx3ZEc4dWMyVmpjREkxTm1zeExsQjFZa3RsZVJJakNpRUM3QmpJSlFIRkNJRVpKUlo1dFRqcHo0NnVVQ2xXeklZc2QzaXFGSU5sNklZU0JBb0NDQUVZT2hJUkNnc0tBM1Z2YlJJRU9EQXdNQkRBbWd3YVFDSmFKOWcycUlnaVhReGkzRmlOYXp0K1locTVXYkFwYkljOEFKcDVrMzNZVmdkNjFkdTRDa2gvdFhEMVdMVWhPblUrWXFnT0twempBdStaa2JZSFRCUT0nLFxuICBhY2NvdW50TnVtYmVyOiA1OCxcbiAgc2VxdWVuY2U6IDU4LFxuICBzZW5kQW1vdW50OiAnMScsXG59O1xuXG5leHBvcnQgY29uc3QgVEVTVF9TRU5EX01BTllfVFggPSB7XG4gIGhhc2g6ICdDNDZEMDQzRUNBOUQyRUU5OTc1MUY1MEM3NTgzRDM5RDkxQjBGOEZERjQ4QkNFMkI3OEYwOTJCMjgxQTFCODQ3JyxcbiAgc2lnbmF0dXJlOiAnMlFIbWdvdi8wQzZmbDFIVlB6K1VFbWNKdGhNdnJxQjJiQUgwTmZOSmwvb3JqbUF4ZEI2N3VoVmhCWnhxU1doeHpJK3ZhMWh0VCtMTlVidHhlVjlJMVE9PScsXG4gIHNpZ25lZFR4QmFzZTY0OlxuICAgICdDcGtDQ29zQkNod3ZZMjl6Ylc5ekxtSmhibXN1ZGpGaVpYUmhNUzVOYzJkVFpXNWtFbXNLTFcxaGJuUnlZVEZqZVhsNmNIaHdiSGhrZW10bFpXRTNhM2R6ZVdSaFpHYzROek0xTjNGdVlUVmtNR1p5WXhJdGJXRnVkSEpoTVRoek5XeDVibTV0ZURNM2FIRTBkMnh5ZHpsblpHNDJPSE5uTW5WNGNEVnlkSGh1ZDJWNUdnc0tBM1Z2YlJJRU1UQXdNQXFJQVFvY0wyTnZjMjF2Y3k1aVlXNXJMbll4WW1WMFlURXVUWE5uVTJWdVpCSm9DaTF0WVc1MGNtRXhZM2w1ZW5CNGNHeDRaSHByWldWaE4ydDNjM2xrWVdSbk9EY3pOVGR4Ym1FMVpEQm1jbU1TTFcxaGJuUnlZVEU0Y3pWc2VXNXViWGd6TjJoeE5IZHNjbmM1WjJSdU5qaHpaekoxZUhBMWNuUjRibmRsZVJvSUNnTjFiMjBTQVRJU1pRcFFDa1lLSHk5amIzTnRiM011WTNKNWNIUnZMbk5sWTNBeU5UWnJNUzVRZFdKTFpYa1NJd29oQXV3WXlDVUJ4UWlCR1NVV2ViVTQ2YytPcmxBcFZzeUdMSGQ0cWhTRFplaUdFZ1FLQWdnQkdEWVNFUW9MQ2dOMWIyMFNCRGd3TURBUXdKb01Ha0RaQWVhQ2kvL1FMcCtYVWRVL1A1UVNad20yRXkrdW9IWnNBZlExODBtWCtpdU9ZREYwSHJ1NkZXRUZuR3BKYUhITWo2OXJXRzFQNHMxUnUzRjVYMGpWJyxcbiAgYWNjb3VudE51bWJlcjogNTQsXG4gIHNlcXVlbmNlOiA1NCxcbiAgc2VuZEFtb3VudDE6ICcxJyxcbiAgc2VuZEFtb3VudDI6ICcyJyxcbn07XG5cbmV4cG9ydCBjb25zdCBURVNUX1RYX1dJVEhfTUVNTyA9IHtcbiAgaGFzaDogJ0ZCRTMxRTVFNURGRDFFMzQ2RUQyRkQ3RTJBQzZBODE4M0FCMDU5RjlFNUI4MjkzRTZFRDg4MzQ4QjMyMUI4QTYnLFxuICBzaWduYXR1cmU6ICdRL24wZFk3NEpvRmw0SnJWYi9IL1ZVbTVqaTcwcnlnTVlyN2tkTEtaOXlKcDNQVzVqL3VzQ3lwcUYxdEJJcVR3QlJ2RGZWWHF4OFRhdDRXMkxFa2MvQT09JyxcbiAgc2lnbmVkVHhCYXNlNjQ6XG4gICAgJ0Nxa0JDb29CQ2h3dlkyOXpiVzl6TG1KaGJtc3VkakZpWlhSaE1TNU5jMmRUWlc1a0Vtb0tMVzFoYm5SeVlURmplWGw2Y0hod2JIaGtlbXRsWldFM2EzZHplV1JoWkdjNE56TTFOM0Z1WVRWa01HWnlZeEl0YldGdWRISmhNVGh6Tld4NWJtNXRlRE0zYUhFMGQyeHlkemxuWkc0Mk9ITm5NblY0Y0RWeWRIaHVkMlY1R2dvS0EzVnZiUklETlRBd0VocFVaWE4wTVRJelFXeHdhR0Z1ZFcxbGNtbGpUV1Z0YnpRMU5oSmxDbEFLUmdvZkwyTnZjMjF2Y3k1amNubHdkRzh1YzJWamNESTFObXN4TGxCMVlrdGxlUklqQ2lFQzdCaklKUUhGQ0lFWkpSWjV0VGpwejQ2dVVDbFd6SVlzZDNpcUZJTmw2SVlTQkFvQ0NBRVlOeElSQ2dzS0EzVnZiUklFT0RBd01CREFtZ3dhUUVQNTlIV08rQ2FCWmVDYTFXL3gvMVZKdVk0dTlLOG9ER0srNUhTeW1mY2lhZHoxdVkvN3JBc3FhaGRiUVNLazhBVWJ3MzFWNnNmRTJyZUZ0aXhKSFB3PScsXG4gIGFjY291bnROdW1iZXI6IDU1LFxuICBzZXF1ZW5jZTogNTUsXG4gIHNlbmRBbW91bnQ6ICc1MDAnLFxuICBtZW1vOiAnVGVzdDEyM0FscGhhbnVtZXJpY01lbW80NTYnLFxufTtcblxuZXhwb3J0IGNvbnN0IGJsb2NrSGFzaGVzID0ge1xuICBoYXNoMTogJzRFMjRDMDBBMTBFNzBGNTRCMzBCQUZCRjVCNTU0NTg4Mjc0MEJDMjg5NDczOTAxN0MyODQ5NzhEODI3RkUxOTYnLFxuICBoYXNoMjogJzk4REQ0NDAwQkY3MERDOEIyMjE0QjNFMzhFMTI5MkVDRUYyMTE0Qzc4QzI2QTUwQjBCRkVEMjVEQTJFOEQ0RTcnLFxufTtcblxuLy8gR2VuZXJhdGUgdGhlIGNvbXBsZXRlIGNyb25vcyB0ZXN0IGRhdGFcbmV4cG9ydCBjb25zdCBtYW50cmEgPSBnZW5lcmF0ZUNvaW5EYXRhKGNoYWluQ29uZmlnLCBERUZBVUxUUywgYmxvY2tIYXNoZXMsIHtcbiAgVEVTVF9TRU5EX1RYLFxuICBURVNUX1NFTkRfVFgyLFxuICBURVNUX1NFTkRfTUFOWV9UWCxcbiAgVEVTVF9UWF9XSVRIX01FTU8sXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgbWFudHJhO1xuIl19
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Data generation functions for Cosmos SDK test data
3
+ * This file contains functions to generate test data for Cosmos SDK-based coins
4
+ */
5
+ import { ChainConfig, DefaultValues, TestTransaction, TestAddresses, TestBlockHashes, TestTxIds, TestCoinAmounts, GasBudget, TransactionMessage, CoinTestData } from './types';
6
+ /**
7
+ * Generate addresses for testing
8
+ * @param {DefaultValues} defaults - Default values containing base addresses
9
+ * @returns {TestAddresses} Object containing various test addresses
10
+ */
11
+ export declare const generateAddresses: (defaults: DefaultValues) => TestAddresses;
12
+ /**
13
+ * Generate transaction IDs from test transactions
14
+ * @param {Object} testTxs - Object containing test transactions
15
+ * @returns {TestTxIds} Object containing transaction IDs
16
+ */
17
+ export declare const generateTxIds: (testTxs: {
18
+ [key: string]: TestTransaction;
19
+ }) => TestTxIds;
20
+ /**
21
+ * Generate coin amounts for testing
22
+ * @param {string} baseDenom - Base denomination of the coin
23
+ * @returns {TestCoinAmounts} Object containing various test amounts
24
+ */
25
+ export declare const generateCoinAmounts: (baseDenom: string) => TestCoinAmounts;
26
+ /**
27
+ * Generate a standard transaction message for sending tokens
28
+ * @param {string} fromAddress - The sender address
29
+ * @param {string} toAddress - The recipient address
30
+ * @param {string} denom - The token denomination
31
+ * @param {string} amount - The amount to send
32
+ * @returns {TransactionMessage} A transaction message
33
+ */
34
+ export declare const generateSendMessage: (fromAddress: string, toAddress: string, denom: string, amount: string) => TransactionMessage;
35
+ /**
36
+ * Generate a standard gas budget
37
+ * @param {string} denom - The token denomination
38
+ * @param {string} amount - The gas amount
39
+ * @param {number} gasLimit - The gas limit
40
+ * @returns {GasBudget} A gas budget
41
+ */
42
+ export declare const generateGasBudget: (denom: string, amount: string, gasLimit?: number) => GasBudget;
43
+ /**
44
+ * Generate complete coin test data
45
+ * @param {ChainConfig} chainConfig - Chain configuration
46
+ * @param {DefaultValues} defaults - Default values
47
+ * @param {TestBlockHashes} blockHashes - Block hashes for testing
48
+ * @param {Object} testTxs - Test transactions
49
+ * @returns {CoinTestData} Complete coin test data
50
+ */
51
+ export declare const generateCoinData: (chainConfig: ChainConfig, defaults: DefaultValues, blockHashes: TestBlockHashes, testTxs: {
52
+ [key: string]: TestTransaction;
53
+ }) => CoinTestData;
54
+ //# sourceMappingURL=generators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generators.d.ts","sourceRoot":"","sources":["../../../test/testUtils/generators.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,WAAW,EACX,aAAa,EACb,eAAe,EACf,aAAa,EACb,eAAe,EACf,SAAS,EACT,eAAe,EACf,SAAS,EACT,kBAAkB,EAClB,YAAY,EACb,MAAM,SAAS,CAAC;AAEjB;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,aAAc,aAAa,KAAG,aAiB3D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,YAAa;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAA;CAAE,KAAG,SAM3E,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,cAAe,MAAM,KAAG,eAQvD,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,gBACjB,MAAM,aACR,MAAM,SACV,MAAM,UACL,MAAM,KACb,kBAcF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,UAAW,MAAM,UAAU,MAAM,wBAAsB,SAKpF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,gBACd,WAAW,YACd,aAAa,eACV,eAAe,WACnB;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAA;CAAE,KAC1C,YAqHF,CAAC"}
@@ -0,0 +1,183 @@
1
+ "use strict";
2
+ /**
3
+ * Data generation functions for Cosmos SDK test data
4
+ * This file contains functions to generate test data for Cosmos SDK-based coins
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.generateCoinData = exports.generateGasBudget = exports.generateSendMessage = exports.generateCoinAmounts = exports.generateTxIds = exports.generateAddresses = void 0;
8
+ /**
9
+ * Generate addresses for testing
10
+ * @param {DefaultValues} defaults - Default values containing base addresses
11
+ * @returns {TestAddresses} Object containing various test addresses
12
+ */
13
+ const generateAddresses = (defaults) => {
14
+ return {
15
+ address1: defaults.senderAddress,
16
+ address2: defaults.recipientAddress1,
17
+ address3: defaults.recipientAddress2 || '',
18
+ address4: defaults.senderAddress.slice(0, -1), // remove last character to make invalid
19
+ address5: defaults.senderAddress + 'x', // add random character to make invalid
20
+ address6: defaults.senderAddress.replace(/[a-z]/, '.'), // add dot to make invalid
21
+ validatorAddress1: defaults.validatorAddress1,
22
+ validatorAddress2: defaults.validatorAddress2,
23
+ validatorAddress3: defaults.validatorAddress1 + 'sd', // extra characters to make invalid
24
+ validatorAddress4: defaults.validatorAddress1.replace('1', 'x'), // change character to make invalid
25
+ noMemoIdAddress: defaults.recipientAddress1,
26
+ validMemoIdAddress: defaults.recipientAddress1 + '?memoId=2',
27
+ invalidMemoIdAddress: defaults.recipientAddress1 + '?memoId=1.23',
28
+ multipleMemoIdAddress: defaults.recipientAddress1 + '?memoId=3&memoId=12',
29
+ };
30
+ };
31
+ exports.generateAddresses = generateAddresses;
32
+ /**
33
+ * Generate transaction IDs from test transactions
34
+ * @param {Object} testTxs - Object containing test transactions
35
+ * @returns {TestTxIds} Object containing transaction IDs
36
+ */
37
+ const generateTxIds = (testTxs) => {
38
+ return {
39
+ hash1: testTxs.TEST_SEND_TX.hash,
40
+ hash2: testTxs.TEST_SEND_TX2.hash,
41
+ hash3: testTxs.TEST_SEND_MANY_TX.hash,
42
+ };
43
+ };
44
+ exports.generateTxIds = generateTxIds;
45
+ /**
46
+ * Generate coin amounts for testing
47
+ * @param {string} baseDenom - Base denomination of the coin
48
+ * @returns {TestCoinAmounts} Object containing various test amounts
49
+ */
50
+ const generateCoinAmounts = (baseDenom) => {
51
+ return {
52
+ amount1: { amount: '1', denom: baseDenom },
53
+ amount2: { amount: '10', denom: baseDenom },
54
+ amount3: { amount: '100', denom: baseDenom },
55
+ amount4: { amount: '-1', denom: baseDenom },
56
+ amount5: { amount: '100', denom: 'm' + baseDenom },
57
+ };
58
+ };
59
+ exports.generateCoinAmounts = generateCoinAmounts;
60
+ /**
61
+ * Generate a standard transaction message for sending tokens
62
+ * @param {string} fromAddress - The sender address
63
+ * @param {string} toAddress - The recipient address
64
+ * @param {string} denom - The token denomination
65
+ * @param {string} amount - The amount to send
66
+ * @returns {TransactionMessage} A transaction message
67
+ */
68
+ const generateSendMessage = (fromAddress, toAddress, denom, amount) => {
69
+ return {
70
+ typeUrl: '/cosmos.bank.v1beta1.MsgSend',
71
+ value: {
72
+ amount: [
73
+ {
74
+ denom,
75
+ amount,
76
+ },
77
+ ],
78
+ fromAddress,
79
+ toAddress,
80
+ },
81
+ };
82
+ };
83
+ exports.generateSendMessage = generateSendMessage;
84
+ /**
85
+ * Generate a standard gas budget
86
+ * @param {string} denom - The token denomination
87
+ * @param {string} amount - The gas amount
88
+ * @param {number} gasLimit - The gas limit
89
+ * @returns {GasBudget} A gas budget
90
+ */
91
+ const generateGasBudget = (denom, amount, gasLimit = 500000) => {
92
+ return {
93
+ amount: [{ denom, amount }],
94
+ gasLimit,
95
+ };
96
+ };
97
+ exports.generateGasBudget = generateGasBudget;
98
+ /**
99
+ * Generate complete coin test data
100
+ * @param {ChainConfig} chainConfig - Chain configuration
101
+ * @param {DefaultValues} defaults - Default values
102
+ * @param {TestBlockHashes} blockHashes - Block hashes for testing
103
+ * @param {Object} testTxs - Test transactions
104
+ * @returns {CoinTestData} Complete coin test data
105
+ */
106
+ const generateCoinData = (chainConfig, defaults, blockHashes, testTxs) => {
107
+ const addresses = (0, exports.generateAddresses)(defaults);
108
+ const txIds = (0, exports.generateTxIds)(testTxs);
109
+ const coinAmounts = (0, exports.generateCoinAmounts)(chainConfig.baseDenom);
110
+ return {
111
+ mainnetName: chainConfig.mainnetName,
112
+ mainnetCoin: chainConfig.mainnetCoin,
113
+ testnetCoin: chainConfig.testnetCoin,
114
+ testnetName: chainConfig.testnetName,
115
+ family: chainConfig.family,
116
+ decimalPlaces: chainConfig.decimalPlaces,
117
+ baseDenom: chainConfig.baseDenom,
118
+ chainId: chainConfig.chainId,
119
+ senderAddress: defaults.senderAddress,
120
+ pubKey: defaults.pubKey,
121
+ privateKey: defaults.privateKey,
122
+ validatorPrefix: chainConfig.validatorPrefix,
123
+ addressPrefix: chainConfig.addressPrefix,
124
+ addresses,
125
+ blockHashes,
126
+ txIds,
127
+ coinAmounts,
128
+ testSendTx: {
129
+ ...testTxs.TEST_SEND_TX,
130
+ sender: testTxs.TEST_SEND_TX.sender || defaults.senderAddress,
131
+ recipient: testTxs.TEST_SEND_TX.recipient || defaults.recipientAddress1,
132
+ chainId: chainConfig.chainId,
133
+ sendAmount: testTxs.TEST_SEND_TX.sendAmount || defaults.sendAmount,
134
+ feeAmount: testTxs.TEST_SEND_TX.feeAmount || defaults.feeAmount,
135
+ privateKey: testTxs.TEST_SEND_TX.privateKey || defaults.privateKey,
136
+ pubKey: testTxs.TEST_SEND_TX.pubKey || defaults.pubKey,
137
+ gasBudget: (0, exports.generateGasBudget)(chainConfig.baseDenom, testTxs.TEST_SEND_TX.feeAmount || defaults.feeAmount, defaults.gasLimit),
138
+ sendMessage: (0, exports.generateSendMessage)(testTxs.TEST_SEND_TX.sender || defaults.senderAddress, testTxs.TEST_SEND_TX.recipient || defaults.recipientAddress1, chainConfig.baseDenom, testTxs.TEST_SEND_TX.sendAmount || defaults.sendAmount),
139
+ },
140
+ testSendTx2: {
141
+ ...testTxs.TEST_SEND_TX2,
142
+ sender: testTxs.TEST_SEND_TX2.sender || defaults.senderAddress,
143
+ recipient: testTxs.TEST_SEND_TX2.recipient || defaults.recipientAddress1,
144
+ chainId: chainConfig.chainId,
145
+ sendAmount: testTxs.TEST_SEND_TX2.sendAmount || defaults.sendAmount,
146
+ feeAmount: testTxs.TEST_SEND_TX2.feeAmount || defaults.feeAmount,
147
+ privateKey: testTxs.TEST_SEND_TX2.privateKey || defaults.privateKey,
148
+ pubKey: testTxs.TEST_SEND_TX2.pubKey || defaults.pubKey,
149
+ gasBudget: (0, exports.generateGasBudget)(chainConfig.baseDenom, testTxs.TEST_SEND_TX2.feeAmount || defaults.feeAmount, defaults.gasLimit),
150
+ sendMessage: (0, exports.generateSendMessage)(testTxs.TEST_SEND_TX2.sender || defaults.senderAddress, testTxs.TEST_SEND_TX2.recipient || defaults.recipientAddress1, chainConfig.baseDenom, testTxs.TEST_SEND_TX2.sendAmount || defaults.sendAmount),
151
+ },
152
+ testSendManyTx: {
153
+ ...testTxs.TEST_SEND_MANY_TX,
154
+ sender: testTxs.TEST_SEND_MANY_TX.sender || defaults.senderAddress,
155
+ chainId: chainConfig.chainId,
156
+ sendAmount: testTxs.TEST_SEND_MANY_TX.sendAmount || defaults.sendAmount,
157
+ sendAmount2: testTxs.TEST_SEND_MANY_TX.sendAmount2 || defaults.sendAmount2,
158
+ feeAmount: testTxs.TEST_SEND_MANY_TX.feeAmount || defaults.feeAmount,
159
+ pubKey: testTxs.TEST_SEND_MANY_TX.pubKey || defaults.pubKey,
160
+ privateKey: testTxs.TEST_SEND_MANY_TX.privateKey || defaults.privateKey,
161
+ memo: '',
162
+ gasBudget: (0, exports.generateGasBudget)(chainConfig.baseDenom, testTxs.TEST_SEND_MANY_TX.feeAmount || defaults.feeAmount, defaults.gasLimit),
163
+ sendMessages: [
164
+ (0, exports.generateSendMessage)(testTxs.TEST_SEND_MANY_TX.sender || defaults.senderAddress, testTxs.TEST_SEND_MANY_TX.recipient || defaults.recipientAddress1, chainConfig.baseDenom, testTxs.TEST_SEND_MANY_TX.sendAmount || defaults.sendAmount),
165
+ (0, exports.generateSendMessage)(testTxs.TEST_SEND_MANY_TX.sender || defaults.senderAddress, testTxs.TEST_SEND_MANY_TX.recipient2 || defaults.recipientAddress1, chainConfig.baseDenom, testTxs.TEST_SEND_MANY_TX.sendAmount2 || defaults.sendAmount),
166
+ ],
167
+ },
168
+ testTxWithMemo: {
169
+ ...testTxs.TEST_TX_WITH_MEMO,
170
+ sender: testTxs.TEST_TX_WITH_MEMO.sender || defaults.senderAddress,
171
+ recipient: testTxs.TEST_TX_WITH_MEMO.recipient || defaults.recipientAddress1,
172
+ chainId: chainConfig.chainId,
173
+ sendAmount: testTxs.TEST_TX_WITH_MEMO.sendAmount || defaults.sendAmount,
174
+ feeAmount: testTxs.TEST_TX_WITH_MEMO.feeAmount || defaults.feeAmount,
175
+ pubKey: testTxs.TEST_TX_WITH_MEMO.pubKey || defaults.pubKey,
176
+ privateKey: testTxs.TEST_TX_WITH_MEMO.privateKey || defaults.privateKey,
177
+ gasBudget: (0, exports.generateGasBudget)(chainConfig.baseDenom, testTxs.TEST_TX_WITH_MEMO.feeAmount || defaults.feeAmount, defaults.gasLimit),
178
+ sendMessage: (0, exports.generateSendMessage)(testTxs.TEST_TX_WITH_MEMO.sender || defaults.senderAddress, testTxs.TEST_TX_WITH_MEMO.recipient || defaults.recipientAddress1, chainConfig.baseDenom, testTxs.TEST_TX_WITH_MEMO.sendAmount || defaults.sendAmount),
179
+ },
180
+ };
181
+ };
182
+ exports.generateCoinData = generateCoinData;
183
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Rlc3QvdGVzdFV0aWxzL2dlbmVyYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7R0FHRzs7O0FBZUg7Ozs7R0FJRztBQUNJLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxRQUF1QixFQUFpQixFQUFFO0lBQzFFLE9BQU87UUFDTCxRQUFRLEVBQUUsUUFBUSxDQUFDLGFBQWE7UUFDaEMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxpQkFBaUI7UUFDcEMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxpQkFBaUIsSUFBSSxFQUFFO1FBQzFDLFFBQVEsRUFBRSxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSx3Q0FBd0M7UUFDdkYsUUFBUSxFQUFFLFFBQVEsQ0FBQyxhQUFhLEdBQUcsR0FBRyxFQUFFLHVDQUF1QztRQUMvRSxRQUFRLEVBQUUsUUFBUSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxFQUFFLDBCQUEwQjtRQUNsRixpQkFBaUIsRUFBRSxRQUFRLENBQUMsaUJBQWlCO1FBQzdDLGlCQUFpQixFQUFFLFFBQVEsQ0FBQyxpQkFBaUI7UUFDN0MsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLGlCQUFpQixHQUFHLElBQUksRUFBRSxtQ0FBbUM7UUFDekYsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsbUNBQW1DO1FBQ3BHLGVBQWUsRUFBRSxRQUFRLENBQUMsaUJBQWlCO1FBQzNDLGtCQUFrQixFQUFFLFFBQVEsQ0FBQyxpQkFBaUIsR0FBRyxXQUFXO1FBQzVELG9CQUFvQixFQUFFLFFBQVEsQ0FBQyxpQkFBaUIsR0FBRyxjQUFjO1FBQ2pFLHFCQUFxQixFQUFFLFFBQVEsQ0FBQyxpQkFBaUIsR0FB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KipcbiAqIERhdGEgZ2VuZXJhdGlvbiBmdW5jdGlvbnMgZm9yIENvc21vcyBTREsgdGVzdCBkYXRhXG4gKiBUaGlzIGZpbGUgY29udGFpbnMgZnVuY3Rpb25zIHRvIGdlbmVyYXRlIHRlc3QgZGF0YSBmb3IgQ29zbW9zIFNESy1iYXNlZCBjb2luc1xuICovXG5cbmltcG9ydCB7XG4gIENoYWluQ29uZmlnLFxuICBEZWZhdWx0VmFsdWVzLFxuICBUZXN0VHJhbnNhY3Rpb24sXG4gIFRlc3RBZGRyZXNzZXMsXG4gIFRlc3RCbG9ja0hhc2hlcyxcbiAgVGVzdFR4SWRzLFxuICBUZXN0Q29pbkFtb3VudHMsXG4gIEdhc0J1ZGdldCxcbiAgVHJhbnNhY3Rpb25NZXNzYWdlLFxuICBDb2luVGVzdERhdGEsXG59IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIEdlbmVyYXRlIGFkZHJlc3NlcyBmb3IgdGVzdGluZ1xuICogQHBhcmFtIHtEZWZhdWx0VmFsdWVzfSBkZWZhdWx0cyAtIERlZmF1bHQgdmFsdWVzIGNvbnRhaW5pbmcgYmFzZSBhZGRyZXNzZXNcbiAqIEByZXR1cm5zIHtUZXN0QWRkcmVzc2VzfSBPYmplY3QgY29udGFpbmluZyB2YXJpb3VzIHRlc3QgYWRkcmVzc2VzXG4gKi9cbmV4cG9ydCBjb25zdCBnZW5lcmF0ZUFkZHJlc3NlcyA9IChkZWZhdWx0czogRGVmYXVsdFZhbHVlcyk6IFRlc3RBZGRyZXNzZXMgPT4ge1xuICByZXR1cm4ge1xuICAgIGFkZHJlc3MxOiBkZWZhdWx0cy5zZW5kZXJBZGRyZXNzLFxuICAgIGFkZHJlc3MyOiBkZWZhdWx0cy5yZWNpcGllbnRBZGRyZXNzMSxcbiAgICBhZGRyZXNzMzogZGVmYXVsdHMucmVjaXBpZW50QWRkcmVzczIgfHwgJycsXG4gICAgYWRkcmVzczQ6IGRlZmF1bHRzLnNlbmRlckFkZHJlc3Muc2xpY2UoMCwgLTEpLCAvLyByZW1vdmUgbGFzdCBjaGFyYWN0ZXIgdG8gbWFrZSBpbnZhbGlkXG4gICAgYWRkcmVzczU6IGRlZmF1bHRzLnNlbmRlckFkZHJlc3MgKyAneCcsIC8vIGFkZCByYW5kb20gY2hhcmFjdGVyIHRvIG1ha2UgaW52YWxpZFxuICAgIGFkZHJlc3M2OiBkZWZhdWx0cy5zZW5kZXJBZGRyZXNzLnJlcGxhY2UoL1thLXpdLywgJy4nKSwgLy8gYWRkIGRvdCB0byBtYWtlIGludmFsaWRcbiAgICB2YWxpZGF0b3JBZGRyZXNzMTogZGVmYXVsdHMudmFsaWRhdG9yQWRkcmVzczEsXG4gICAgdmFsaWRhdG9yQWRkcmVzczI6IGRlZmF1bHRzLnZhbGlkYXRvckFkZHJlc3MyLFxuICAgIHZhbGlkYXRvckFkZHJlc3MzOiBkZWZhdWx0cy52YWxpZGF0b3JBZGRyZXNzMSArICdzZCcsIC8vIGV4dHJhIGNoYXJhY3RlcnMgdG8gbWFrZSBpbnZhbGlkXG4gICAgdmFsaWRhdG9yQWRkcmVzczQ6IGRlZmF1bHRzLnZhbGlkYXRvckFkZHJlc3MxLnJlcGxhY2UoJzEnLCAneCcpLCAvLyBjaGFuZ2UgY2hhcmFjdGVyIHRvIG1ha2UgaW52YWxpZFxuICAgIG5vTWVtb0lkQWRkcmVzczogZGVmYXVsdHMucmVjaXBpZW50QWRkcmVzczEsXG4gICAgdmFsaWRNZW1vSWRBZGRyZXNzOiBkZWZhdWx0cy5yZWNpcGllbnRBZGRyZXNzMSArICc/bWVtb0lkPTInLFxuICAgIGludmFsaWRNZW1vSWRBZGRyZXNzOiBkZWZhdWx0cy5yZWNpcGllbnRBZGRyZXNzMSArICc/bWVtb0lkPTEuMjMnLFxuICAgIG11bHRpcGxlTWVtb0lkQWRkcmVzczogZGVmYXVsdHMucmVjaXBpZW50QWRkcmVzczEgKyAnP21lbW9JZD0zJm1lbW9JZD0xMicsXG4gIH07XG59O1xuXG4vKipcbiAqIEdlbmVyYXRlIHRyYW5zYWN0aW9uIElEcyBmcm9tIHRlc3QgdHJhbnNhY3Rpb25zXG4gKiBAcGFyYW0ge09iamVjdH0gdGVzdFR4cyAtIE9iamVjdCBjb250YWluaW5nIHRlc3QgdHJhbnNhY3Rpb25zXG4gKiBAcmV0dXJucyB7VGVzdFR4SWRzfSBPYmplY3QgY29udGFpbmluZyB0cmFuc2FjdGlvbiBJRHNcbiAqL1xuZXhwb3J0IGNvbnN0IGdlbmVyYXRlVHhJZHMgPSAodGVzdFR4czogeyBba2V5OiBzdHJpbmddOiBUZXN0VHJhbnNhY3Rpb24gfSk6IFRlc3RUeElkcyA9PiB7XG4gIHJldHVybiB7XG4gICAgaGFzaDE6IHRlc3RUeHMuVEVTVF9TRU5EX1RYLmhhc2gsXG4gICAgaGFzaDI6IHRlc3RUeHMuVEVTVF9TRU5EX1RYMi5oYXNoLFxuICAgIGhhc2gzOiB0ZXN0VHhzLlRFU1RfU0VORF9NQU5ZX1RYLmhhc2gsXG4gIH07XG59O1xuXG4vKipcbiAqIEdlbmVyYXRlIGNvaW4gYW1vdW50cyBmb3IgdGVzdGluZ1xuICogQHBhcmFtIHtzdHJpbmd9IGJhc2VEZW5vbSAtIEJhc2UgZGVub21pbmF0aW9uIG9mIHRoZSBjb2luXG4gKiBAcmV0dXJucyB7VGVzdENvaW5BbW91bnRzfSBPYmplY3QgY29udGFpbmluZyB2YXJpb3VzIHRlc3QgYW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgZ2VuZXJhdGVDb2luQW1vdW50cyA9IChiYXNlRGVub206IHN0cmluZyk6IFRlc3RDb2luQW1vdW50cyA9PiB7XG4gIHJldHVybiB7XG4gICAgYW1vdW50MTogeyBhbW91bnQ6ICcxJywgZGVub206IGJhc2VEZW5vbSB9LFxuICAgIGFtb3VudDI6IHsgYW1vdW50OiAnMTAnLCBkZW5vbTogYmFzZURlbm9tIH0sXG4gICAgYW1vdW50MzogeyBhbW91bnQ6ICcxMDAnLCBkZW5vbTogYmFzZURlbm9tIH0sXG4gICAgYW1vdW50NDogeyBhbW91bnQ6ICctMScsIGRlbm9tOiBiYXNlRGVub20gfSxcbiAgICBhbW91bnQ1OiB7IGFtb3VudDogJzEwMCcsIGRlbm9tOiAnbScgKyBiYXNlRGVub20gfSxcbiAgfTtcbn07XG5cbi8qKlxuICogR2VuZXJhdGUgYSBzdGFuZGFyZCB0cmFuc2FjdGlvbiBtZXNzYWdlIGZvciBzZW5kaW5nIHRva2Vuc1xuICogQHBhcmFtIHtzdHJpbmd9IGZyb21BZGRyZXNzIC0gVGhlIHNlbmRlciBhZGRyZXNzXG4gKiBAcGFyYW0ge3N0cmluZ30gdG9BZGRyZXNzIC0gVGhlIHJlY2lwaWVudCBhZGRyZXNzXG4gKiBAcGFyYW0ge3N0cmluZ30gZGVub20gLSBUaGUgdG9rZW4gZGVub21pbmF0aW9uXG4gKiBAcGFyYW0ge3N0cmluZ30gYW1vdW50IC0gVGhlIGFtb3VudCB0byBzZW5kXG4gKiBAcmV0dXJucyB7VHJhbnNhY3Rpb25NZXNzYWdlfSBBIHRyYW5zYWN0aW9uIG1lc3NhZ2VcbiAqL1xuZXhwb3J0IGNvbnN0IGdlbmVyYXRlU2VuZE1lc3NhZ2UgPSAoXG4gIGZyb21BZGRyZXNzOiBzdHJpbmcsXG4gIHRvQWRkcmVzczogc3RyaW5nLFxuICBkZW5vbTogc3RyaW5nLFxuICBhbW91bnQ6IHN0cmluZ1xuKTogVHJhbnNhY3Rpb25NZXNzYWdlID0+IHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlVXJsOiAnL2Nvc21vcy5iYW5rLnYxYmV0YTEuTXNnU2VuZCcsXG4gICAgdmFsdWU6IHtcbiAgICAgIGFtb3VudDogW1xuICAgICAgICB7XG4gICAgICAgICAgZGVub20sXG4gICAgICAgICAgYW1vdW50LFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIGZyb21BZGRyZXNzLFxuICAgICAgdG9BZGRyZXNzLFxuICAgIH0sXG4gIH07XG59O1xuXG4vKipcbiAqIEdlbmVyYXRlIGEgc3RhbmRhcmQgZ2FzIGJ1ZGdldFxuICogQHBhcmFtIHtzdHJpbmd9IGRlbm9tIC0gVGhlIHRva2VuIGRlbm9taW5hdGlvblxuICogQHBhcmFtIHtzdHJpbmd9IGFtb3VudCAtIFRoZSBnYXMgYW1vdW50XG4gKiBAcGFyYW0ge251bWJlcn0gZ2FzTGltaXQgLSBUaGUgZ2FzIGxpbWl0XG4gKiBAcmV0dXJucyB7R2FzQnVkZ2V0fSBBIGdhcyBidWRnZXRcbiAqL1xuZXhwb3J0IGNvbnN0IGdlbmVyYXRlR2FzQnVkZ2V0ID0gKGRlbm9tOiBzdHJpbmcsIGFtb3VudDogc3RyaW5nLCBnYXNMaW1pdCA9IDUwMDAwMCk6IEdhc0J1ZGdldCA9PiB7XG4gIHJldHVybiB7XG4gICAgYW1vdW50OiBbeyBkZW5vbSwgYW1vdW50IH1dLFxuICAgIGdhc0xpbWl0LFxuICB9O1xufTtcblxuLyoqXG4gKiBHZW5lcmF0ZSBjb21wbGV0ZSBjb2luIHRlc3QgZGF0YVxuICogQHBhcmFtIHtDaGFpbkNvbmZpZ30gY2hhaW5Db25maWcgLSBDaGFpbiBjb25maWd1cmF0aW9uXG4gKiBAcGFyYW0ge0RlZmF1bHRWYWx1ZXN9IGRlZmF1bHRzIC0gRGVmYXVsdCB2YWx1ZXNcbiAqIEBwYXJhbSB7VGVzdEJsb2NrSGFzaGVzfSBibG9ja0hhc2hlcyAtIEJsb2NrIGhhc2hlcyBmb3IgdGVzdGluZ1xuICogQHBhcmFtIHtPYmplY3R9IHRlc3RUeHMgLSBUZXN0IHRyYW5zYWN0aW9uc1xuICogQHJldHVybnMge0NvaW5UZXN0RGF0YX0gQ29tcGxldGUgY29pbiB0ZXN0IGRhdGFcbiAqL1xuZXhwb3J0IGNvbnN0IGdlbmVyYXRlQ29pbkRhdGEgPSAoXG4gIGNoYWluQ29uZmlnOiBDaGFpbkNvbmZpZyxcbiAgZGVmYXVsdHM6IERlZmF1bHRWYWx1ZXMsXG4gIGJsb2NrSGFzaGVzOiBUZXN0QmxvY2tIYXNoZXMsXG4gIHRlc3RUeHM6IHsgW2tleTogc3RyaW5nXTogVGVzdFRyYW5zYWN0aW9uIH1cbik6IENvaW5UZXN0RGF0YSA9PiB7XG4gIGNvbnN0IGFkZHJlc3NlcyA9IGdlbmVyYXRlQWRkcmVzc2VzKGRlZmF1bHRzKTtcbiAgY29uc3QgdHhJZHMgPSBnZW5lcmF0ZVR4SWRzKHRlc3RUeHMpO1xuICBjb25zdCBjb2luQW1vdW50cyA9IGdlbmVyYXRlQ29pbkFtb3VudHMoY2hhaW5Db25maWcuYmFzZURlbm9tKTtcblxuICByZXR1cm4ge1xuICAgIG1haW5uZXROYW1lOiBjaGFpbkNvbmZpZy5tYWlubmV0TmFtZSxcbiAgICBtYWlubmV0Q29pbjogY2hhaW5Db25maWcubWFpbm5ldENvaW4sXG4gICAgdGVzdG5ldENvaW46IGNoYWluQ29uZmlnLnRlc3RuZXRDb2luLFxuICAgIHRlc3RuZXROYW1lOiBjaGFpbkNvbmZpZy50ZXN0bmV0TmFtZSxcbiAgICBmYW1pbHk6IGNoYWluQ29uZmlnLmZhbWlseSxcbiAgICBkZWNpbWFsUGxhY2VzOiBjaGFpbkNvbmZpZy5kZWNpbWFsUGxhY2VzLFxuICAgIGJhc2VEZW5vbTogY2hhaW5Db25maWcuYmFzZURlbm9tLFxuICAgIGNoYWluSWQ6IGNoYWluQ29uZmlnLmNoYWluSWQsXG4gICAgc2VuZGVyQWRkcmVzczogZGVmYXVsdHMuc2VuZGVyQWRkcmVzcyxcbiAgICBwdWJLZXk6IGRlZmF1bHRzLnB1YktleSxcbiAgICBwcml2YXRlS2V5OiBkZWZhdWx0cy5wcml2YXRlS2V5LFxuICAgIHZhbGlkYXRvclByZWZpeDogY2hhaW5Db25maWcudmFsaWRhdG9yUHJlZml4LFxuICAgIGFkZHJlc3NQcmVmaXg6IGNoYWluQ29uZmlnLmFkZHJlc3NQcmVmaXgsXG4gICAgYWRkcmVzc2VzLFxuICAgIGJsb2NrSGFzaGVzLFxuICAgIHR4SWRzLFxuICAgIGNvaW5BbW91bnRzLFxuICAgIHRlc3RTZW5kVHg6IHtcbiAgICAgIC4uLnRlc3RUeHMuVEVTVF9TRU5EX1RYLFxuICAgICAgc2VuZGVyOiB0ZXN0VHhzLlRFU1RfU0VORF9UWC5zZW5kZXIgfHwgZGVmYXVsdHMuc2VuZGVyQWRkcmVzcyxcbiAgICAgIHJlY2lwaWVudDogdGVzdFR4cy5URVNUX1NFTkRfVFgucmVjaXBpZW50IHx8IGRlZmF1bHRzLnJlY2lwaWVudEFkZHJlc3MxLFxuICAgICAgY2hhaW5JZDogY2hhaW5Db25maWcuY2hhaW5JZCxcbiAgICAgIHNlbmRBbW91bnQ6IHRlc3RUeHMuVEVTVF9TRU5EX1RYLnNlbmRBbW91bnQgfHwgZGVmYXVsdHMuc2VuZEFtb3VudCxcbiAgICAgIGZlZUFtb3VudDogdGVzdFR4cy5URVNUX1NFTkRfVFguZmVlQW1vdW50IHx8IGRlZmF1bHRzLmZlZUFtb3VudCxcbiAgICAgIHByaXZhdGVLZXk6IHRlc3RUeHMuVEVTVF9TRU5EX1RYLnByaXZhdGVLZXkgfHwgZGVmYXVsdHMucHJpdmF0ZUtleSxcbiAgICAgIHB1YktleTogdGVzdFR4cy5URVNUX1NFTkRfVFgucHViS2V5IHx8IGRlZmF1bHRzLnB1YktleSxcbiAgICAgIGdhc0J1ZGdldDogZ2VuZXJhdGVHYXNCdWRnZXQoXG4gICAgICAgIGNoYWluQ29uZmlnLmJhc2VEZW5vbSxcbiAgICAgICAgdGVzdFR4cy5URVNUX1NFTkRfVFguZmVlQW1vdW50IHx8IGRlZmF1bHRzLmZlZUFtb3VudCxcbiAgICAgICAgZGVmYXVsdHMuZ2FzTGltaXRcbiAgICAgICksXG4gICAgICBzZW5kTWVzc2FnZTogZ2VuZXJhdGVTZW5kTWVzc2FnZShcbiAgICAgICAgdGVzdFR4cy5URVNUX1NFTkRfVFguc2VuZGVyIHx8IGRlZmF1bHRzLnNlbmRlckFkZHJlc3MsXG4gICAgICAgIHRlc3RUeHMuVEVTVF9TRU5EX1RYLnJlY2lwaWVudCB8fCBkZWZhdWx0cy5yZWNpcGllbnRBZGRyZXNzMSxcbiAgICAgICAgY2hhaW5Db25maWcuYmFzZURlbm9tLFxuICAgICAgICB0ZXN0VHhzLlRFU1RfU0VORF9UWC5zZW5kQW1vdW50IHx8IGRlZmF1bHRzLnNlbmRBbW91bnRcbiAgICAgICksXG4gICAgfSxcbiAgICB0ZXN0U2VuZFR4Mjoge1xuICAgICAgLi4udGVzdFR4cy5URVNUX1NFTkRfVFgyLFxuICAgICAgc2VuZGVyOiB0ZXN0VHhzLlRFU1RfU0VORF9UWDIuc2VuZGVyIHx8IGRlZmF1bHRzLnNlbmRlckFkZHJlc3MsXG4gICAgICByZWNpcGllbnQ6IHRlc3RUeHMuVEVTVF9TRU5EX1RYMi5yZWNpcGllbnQgfHwgZGVmYXVsdHMucmVjaXBpZW50QWRkcmVzczEsXG4gICAgICBjaGFpbklkOiBjaGFpbkNvbmZpZy5jaGFpbklkLFxuICAgICAgc2VuZEFtb3VudDogdGVzdFR4cy5URVNUX1NFTkRfVFgyLnNlbmRBbW91bnQgfHwgZGVmYXVsdHMuc2VuZEFtb3VudCxcbiAgICAgIGZlZUFtb3VudDogdGVzdFR4cy5URVNUX1NFTkRfVFgyLmZlZUFtb3VudCB8fCBkZWZhdWx0cy5mZWVBbW91bnQsXG4gICAgICBwcml2YXRlS2V5OiB0ZXN0VHhzLlRFU1RfU0VORF9UWDIucHJpdmF0ZUtleSB8fCBkZWZhdWx0cy5wcml2YXRlS2V5LFxuICAgICAgcHViS2V5OiB0ZXN0VHhzLlRFU1RfU0VORF9UWDIucHViS2V5IHx8IGRlZmF1bHRzLnB1YktleSxcbiAgICAgIGdhc0J1ZGdldDogZ2VuZXJhdGVHYXNCdWRnZXQoXG4gICAgICAgIGNoYWluQ29uZmlnLmJhc2VEZW5vbSxcbiAgICAgICAgdGVzdFR4cy5URVNUX1NFTkRfVFgyLmZlZUFtb3VudCB8fCBkZWZhdWx0cy5mZWVBbW91bnQsXG4gICAgICAgIGRlZmF1bHRzLmdhc0xpbWl0XG4gICAgICApLFxuICAgICAgc2VuZE1lc3NhZ2U6IGdlbmVyYXRlU2VuZE1lc3NhZ2UoXG4gICAgICAgIHRlc3RUeHMuVEVTVF9TRU5EX1RYMi5zZW5kZXIgfHwgZGVmYXVsdHMuc2VuZGVyQWRkcmVzcyxcbiAgICAgICAgdGVzdFR4cy5URVNUX1NFTkRfVFgyLnJlY2lwaWVudCB8fCBkZWZhdWx0cy5yZWNpcGllbnRBZGRyZXNzMSxcbiAgICAgICAgY2hhaW5Db25maWcuYmFzZURlbm9tLFxuICAgICAgICB0ZXN0VHhzLlRFU1RfU0VORF9UWDIuc2VuZEFtb3VudCB8fCBkZWZhdWx0cy5zZW5kQW1vdW50XG4gICAgICApLFxuICAgIH0sXG4gICAgdGVzdFNlbmRNYW55VHg6IHtcbiAgICAgIC4uLnRlc3RUeHMuVEVTVF9TRU5EX01BTllfVFgsXG4gICAgICBzZW5kZXI6IHRlc3RUeHMuVEVTVF9TRU5EX01BTllfVFguc2VuZGVyIHx8IGRlZmF1bHRzLnNlbmRlckFkZHJlc3MsXG4gICAgICBjaGFpbklkOiBjaGFpbkNvbmZpZy5jaGFpbklkLFxuICAgICAgc2VuZEFtb3VudDogdGVzdFR4cy5URVNUX1NFTkRfTUFOWV9UWC5zZW5kQW1vdW50IHx8IGRlZmF1bHRzLnNlbmRBbW91bnQsXG4gICAgICBzZW5kQW1vdW50MjogdGVzdFR4cy5URVNUX1NFTkRfTUFOWV9UWC5zZW5kQW1vdW50MiB8fCBkZWZhdWx0cy5zZW5kQW1vdW50MixcbiAgICAgIGZlZUFtb3VudDogdGVzdFR4cy5URVNUX1NFTkRfTUFOWV9UWC5mZWVBbW91bnQgfHwgZGVmYXVsdHMuZmVlQW1vdW50LFxuICAgICAgcHViS2V5OiB0ZXN0VHhzLlRFU1RfU0VORF9NQU5ZX1RYLnB1YktleSB8fCBkZWZhdWx0cy5wdWJLZXksXG4gICAgICBwcml2YXRlS2V5OiB0ZXN0VHhzLlRFU1RfU0VORF9NQU5ZX1RYLnByaXZhdGVLZXkgfHwgZGVmYXVsdHMucHJpdmF0ZUtleSxcbiAgICAgIG1lbW86ICcnLFxuICAgICAgZ2FzQnVkZ2V0OiBnZW5lcmF0ZUdhc0J1ZGdldChcbiAgICAgICAgY2hhaW5Db25maWcuYmFzZURlbm9tLFxuICAgICAgICB0ZXN0VHhzLlRFU1RfU0VORF9NQU5ZX1RYLmZlZUFtb3VudCB8fCBkZWZhdWx0cy5mZWVBbW91bnQsXG4gICAgICAgIGRlZmF1bHRzLmdhc0xpbWl0XG4gICAgICApLFxuICAgICAgc2VuZE1lc3NhZ2VzOiBbXG4gICAgICAgIGdlbmVyYXRlU2VuZE1lc3NhZ2UoXG4gICAgICAgICAgdGVzdFR4cy5URVNUX1NFTkRfTUFOWV9UWC5zZW5kZXIgfHwgZGVmYXVsdHMuc2VuZGVyQWRkcmVzcyxcbiAgICAgICAgICB0ZXN0VHhzLlRFU1RfU0VORF9NQU5ZX1RYLnJlY2lwaWVudCB8fCBkZWZhdWx0cy5yZWNpcGllbnRBZGRyZXNzMSxcbiAgICAgICAgICBjaGFpbkNvbmZpZy5iYXNlRGVub20sXG4gICAgICAgICAgdGVzdFR4cy5URVNUX1NFTkRfTUFOWV9UWC5zZW5kQW1vdW50IHx8IGRlZmF1bHRzLnNlbmRBbW91bnRcbiAgICAgICAgKSxcbiAgICAgICAgZ2VuZXJhdGVTZW5kTWVzc2FnZShcbiAgICAgICAgICB0ZXN0VHhzLlRFU1RfU0VORF9NQU5ZX1RYLnNlbmRlciB8fCBkZWZhdWx0cy5zZW5kZXJBZGRyZXNzLFxuICAgICAgICAgIHRlc3RUeHMuVEVTVF9TRU5EX01BTllfVFgucmVjaXBpZW50MiB8fCBkZWZhdWx0cy5yZWNpcGllbnRBZGRyZXNzMSxcbiAgICAgICAgICBjaGFpbkNvbmZpZy5iYXNlRGVub20sXG4gICAgICAgICAgdGVzdFR4cy5URVNUX1NFTkRfTUFOWV9UWC5zZW5kQW1vdW50MiB8fCBkZWZhdWx0cy5zZW5kQW1vdW50XG4gICAgICAgICksXG4gICAgICBdLFxuICAgIH0sXG4gICAgdGVzdFR4V2l0aE1lbW86IHtcbiAgICAgIC4uLnRlc3RUeHMuVEVTVF9UWF9XSVRIX01FTU8sXG4gICAgICBzZW5kZXI6IHRlc3RUeHMuVEVTVF9UWF9XSVRIX01FTU8uc2VuZGVyIHx8IGRlZmF1bHRzLnNlbmRlckFkZHJlc3MsXG4gICAgICByZWNpcGllbnQ6IHRlc3RUeHMuVEVTVF9UWF9XSVRIX01FTU8ucmVjaXBpZW50IHx8IGRlZmF1bHRzLnJlY2lwaWVudEFkZHJlc3MxLFxuICAgICAgY2hhaW5JZDogY2hhaW5Db25maWcuY2hhaW5JZCxcbiAgICAgIHNlbmRBbW91bnQ6IHRlc3RUeHMuVEVTVF9UWF9XSVRIX01FTU8uc2VuZEFtb3VudCB8fCBkZWZhdWx0cy5zZW5kQW1vdW50LFxuICAgICAgZmVlQW1vdW50OiB0ZXN0VHhzLlRFU1RfVFhfV0lUSF9NRU1PLmZlZUFtb3VudCB8fCBkZWZhdWx0cy5mZWVBbW91bnQsXG4gICAgICBwdWJLZXk6IHRlc3RUeHMuVEVTVF9UWF9XSVRIX01FTU8ucHViS2V5IHx8IGRlZmF1bHRzLnB1YktleSxcbiAgICAgIHByaXZhdGVLZXk6IHRlc3RUeHMuVEVTVF9UWF9XSVRIX01FTU8ucHJpdmF0ZUtleSB8fCBkZWZhdWx0cy5wcml2YXRlS2V5LFxuICAgICAgZ2FzQnVkZ2V0OiBnZW5lcmF0ZUdhc0J1ZGdldChcbiAgICAgICAgY2hhaW5Db25maWcuYmFzZURlbm9tLFxuICAgICAgICB0ZXN0VHhzLlRFU1RfVFhfV0lUSF9NRU1PLmZlZUFtb3VudCB8fCBkZWZhdWx0cy5mZWVBbW91bnQsXG4gICAgICAgIGRlZmF1bHRzLmdhc0xpbWl0XG4gICAgICApLFxuICAgICAgc2VuZE1lc3NhZ2U6IGdlbmVyYXRlU2VuZE1lc3NhZ2UoXG4gICAgICAgIHRlc3RUeHMuVEVTVF9UWF9XSVRIX01FTU8uc2VuZGVyIHx8IGRlZmF1bHRzLnNlbmRlckFkZHJlc3MsXG4gICAgICAgIHRlc3RUeHMuVEVTVF9UWF9XSVRIX01FTU8ucmVjaXBpZW50IHx8IGRlZmF1bHRzLnJlY2lwaWVudEFkZHJlc3MxLFxuICAgICAgICBjaGFpbkNvbmZpZy5iYXNlRGVub20sXG4gICAgICAgIHRlc3RUeHMuVEVTVF9UWF9XSVRIX01FTU8uc2VuZEFtb3VudCB8fCBkZWZhdWx0cy5zZW5kQW1vdW50XG4gICAgICApLFxuICAgIH0sXG4gIH07XG59O1xuIl19
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Main exports for Cosmos SDK test utilities
3
+ * This file re-exports all utilities from the testUtils directory
4
+ */
5
+ export * from './types';
6
+ export * from './generators';
7
+ export * from './utils';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../test/testUtils/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ /**
3
+ * Main exports for Cosmos SDK test utilities
4
+ * This file re-exports all utilities from the testUtils directory
5
+ */
6
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
18
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ // Re-export everything from the other files
22
+ __exportStar(require("./types"), exports);
23
+ __exportStar(require("./generators"), exports);
24
+ __exportStar(require("./utils"), exports);
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90ZXN0L3Rlc3RVdGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7OztHQUdHOzs7Ozs7Ozs7Ozs7Ozs7O0FBRUgsNENBQTRDO0FBQzVDLDBDQUF3QjtBQUN4QiwrQ0FBNkI7QUFDN0IsMENBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBNYWluIGV4cG9ydHMgZm9yIENvc21vcyBTREsgdGVzdCB1dGlsaXRpZXNcbiAqIFRoaXMgZmlsZSByZS1leHBvcnRzIGFsbCB1dGlsaXRpZXMgZnJvbSB0aGUgdGVzdFV0aWxzIGRpcmVjdG9yeVxuICovXG5cbi8vIFJlLWV4cG9ydCBldmVyeXRoaW5nIGZyb20gdGhlIG90aGVyIGZpbGVzXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vZ2VuZXJhdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzJztcbiJdfQ==
@@ -0,0 +1,203 @@
1
+ /**
2
+ * Type definitions for Cosmos SDK test data
3
+ * This file contains all interfaces used in the test framework
4
+ */
5
+ /**
6
+ * Interface for chain configuration
7
+ */
8
+ export interface ChainConfig {
9
+ mainnetName: string;
10
+ mainnetCoin: string;
11
+ testnetName: string;
12
+ testnetCoin: string;
13
+ family: string;
14
+ decimalPlaces: number;
15
+ baseDenom: string;
16
+ chainId: string;
17
+ addressPrefix: string;
18
+ validatorPrefix: string;
19
+ }
20
+ /**
21
+ * Interface for default values
22
+ */
23
+ export interface DefaultValues {
24
+ senderAddress: string;
25
+ pubKey: string;
26
+ privateKey: string;
27
+ recipientAddress1: string;
28
+ recipientAddress2?: string;
29
+ sendMessageTypeUrl: string;
30
+ sendAmount: string;
31
+ sendAmount2?: string;
32
+ feeAmount: string;
33
+ gasLimit: number;
34
+ validatorAddress1: string;
35
+ validatorAddress2: string;
36
+ }
37
+ /**
38
+ * Interface for test transaction
39
+ */
40
+ export interface TestTransaction {
41
+ hash: string;
42
+ signature: string;
43
+ signedTxBase64: string;
44
+ accountNumber: number;
45
+ sequence: number;
46
+ sender?: string;
47
+ recipient?: string;
48
+ recipient2?: string;
49
+ memo?: string;
50
+ pubKey?: string;
51
+ privateKey?: string;
52
+ sendAmount?: string;
53
+ sendAmount2?: string;
54
+ feeAmount?: string;
55
+ gasBudget?: GasBudget;
56
+ }
57
+ /**
58
+ * Interface for address data
59
+ */
60
+ export interface TestAddresses {
61
+ address1: string;
62
+ address2: string;
63
+ address3: string;
64
+ address4?: string;
65
+ address5?: string;
66
+ address6?: string;
67
+ validatorAddress1: string;
68
+ validatorAddress2: string;
69
+ validatorAddress3?: string;
70
+ validatorAddress4?: string;
71
+ noMemoIdAddress: string;
72
+ validMemoIdAddress: string;
73
+ invalidMemoIdAddress: string;
74
+ multipleMemoIdAddress: string;
75
+ }
76
+ /**
77
+ * Interface for block hash data
78
+ */
79
+ export interface TestBlockHashes {
80
+ hash1: string;
81
+ hash2: string;
82
+ }
83
+ /**
84
+ * Interface for transaction IDs
85
+ */
86
+ export interface TestTxIds {
87
+ hash1: string;
88
+ hash2: string;
89
+ hash3: string;
90
+ }
91
+ /**
92
+ * Interface for coin amounts
93
+ */
94
+ export interface TestCoinAmounts {
95
+ amount1: {
96
+ amount: string;
97
+ denom: string;
98
+ };
99
+ amount2: {
100
+ amount: string;
101
+ denom: string;
102
+ };
103
+ amount3: {
104
+ amount: string;
105
+ denom: string;
106
+ };
107
+ amount4: {
108
+ amount: string;
109
+ denom: string;
110
+ };
111
+ amount5: {
112
+ amount: string;
113
+ denom: string;
114
+ };
115
+ }
116
+ /**
117
+ * Interface for a transaction message
118
+ */
119
+ export interface TransactionMessage {
120
+ typeUrl: string;
121
+ value: any;
122
+ }
123
+ /**
124
+ * Interface for gas budget
125
+ */
126
+ export interface GasBudget {
127
+ amount: {
128
+ denom: string;
129
+ amount: string;
130
+ }[];
131
+ gasLimit: number;
132
+ }
133
+ /**
134
+ * Interface for a basic transaction
135
+ */
136
+ export interface TestSendTransaction {
137
+ hash: string;
138
+ signature: string;
139
+ signedTxBase64: string;
140
+ sender: string;
141
+ recipient?: string;
142
+ chainId: string;
143
+ accountNumber: number;
144
+ sequence: number;
145
+ sendAmount?: string;
146
+ feeAmount: string;
147
+ sendMessage?: TransactionMessage;
148
+ gasBudget?: GasBudget;
149
+ memo?: string;
150
+ from?: string;
151
+ to?: string;
152
+ pubKey?: string;
153
+ privateKey?: string;
154
+ }
155
+ /**
156
+ * Interface for a multi-send transaction
157
+ */
158
+ export interface TestMultiSendTransaction {
159
+ hash: string;
160
+ signature: string;
161
+ signedTxBase64: string;
162
+ sender: string;
163
+ chainId: string;
164
+ accountNumber: number;
165
+ sequence: number;
166
+ memo?: string;
167
+ sendMessages?: TransactionMessage[];
168
+ gasBudget?: GasBudget;
169
+ sendAmount?: string;
170
+ sendAmount2?: string;
171
+ recipient?: string;
172
+ recipient2?: string;
173
+ pubKey?: string;
174
+ privateKey?: string;
175
+ feeAmount?: string;
176
+ }
177
+ /**
178
+ * Main interface for coin test data
179
+ */
180
+ export interface CoinTestData {
181
+ mainnetName: string;
182
+ mainnetCoin: string;
183
+ testnetCoin: string;
184
+ testnetName: string;
185
+ family: string;
186
+ decimalPlaces: number;
187
+ baseDenom: string;
188
+ chainId: string;
189
+ senderAddress: string;
190
+ pubKey: string;
191
+ privateKey: string;
192
+ validatorPrefix: string;
193
+ addressPrefix: string;
194
+ addresses: TestAddresses;
195
+ blockHashes: TestBlockHashes;
196
+ txIds: TestTxIds;
197
+ coinAmounts: TestCoinAmounts;
198
+ testSendTx: TestSendTransaction;
199
+ testSendTx2: TestSendTransaction;
200
+ testSendManyTx: TestMultiSendTransaction;
201
+ testTxWithMemo: TestSendTransaction;
202
+ }
203
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../test/testUtils/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /**
3
+ * Type definitions for Cosmos SDK test data
4
+ * This file contains all interfaces used in the test framework
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90ZXN0L3Rlc3RVdGlscy90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7OztHQUdHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBUeXBlIGRlZmluaXRpb25zIGZvciBDb3Ntb3MgU0RLIHRlc3QgZGF0YVxuICogVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBpbnRlcmZhY2VzIHVzZWQgaW4gdGhlIHRlc3QgZnJhbWV3b3JrXG4gKi9cblxuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIGNoYWluIGNvbmZpZ3VyYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDaGFpbkNvbmZpZyB7XG4gIG1haW5uZXROYW1lOiBzdHJpbmc7XG4gIG1haW5uZXRDb2luOiBzdHJpbmc7XG4gIHRlc3RuZXROYW1lOiBzdHJpbmc7XG4gIHRlc3RuZXRDb2luOiBzdHJpbmc7XG4gIGZhbWlseTogc3RyaW5nO1xuICBkZWNpbWFsUGxhY2VzOiBudW1iZXI7XG4gIGJhc2VEZW5vbTogc3RyaW5nO1xuICBjaGFpbklkOiBzdHJpbmc7XG4gIGFkZHJlc3NQcmVmaXg6IHN0cmluZztcbiAgdmFsaWRhdG9yUHJlZml4OiBzdHJpbmc7XG59XG5cbi8qKlxuICogSW50ZXJmYWNlIGZvciBkZWZhdWx0IHZhbHVlc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIERlZmF1bHRWYWx1ZXMge1xuICBzZW5kZXJBZGRyZXNzOiBzdHJpbmc7XG4gIHB1YktleTogc3RyaW5nO1xuICBwcml2YXRlS2V5OiBzdHJpbmc7XG4gIHJlY2lwaWVudEFkZHJlc3MxOiBzdHJpbmc7XG4gIHJlY2lwaWVudEFkZHJlc3MyPzogc3RyaW5nOyAvLyBPcHRpb25hbCBmb3IgbXVsdGktc2VuZCB0cmFuc2FjdGlvbnNcbiAgc2VuZE1lc3NhZ2VUeXBlVXJsOiBzdHJpbmc7XG4gIHNlbmRBbW91bnQ6IHN0cmluZztcbiAgc2VuZEFtb3VudDI/OiBzdHJpbmc7IC8vIE9wdGlvbmFsIGZvciBtdWx0aS1zZW5kIHRyYW5zYWN0aW9uc1xuICBmZWVBbW91bnQ6IHN0cmluZztcbiAgZ2FzTGltaXQ6IG51bWJlcjtcbiAgdmFsaWRhdG9yQWRkcmVzczE6IHN0cmluZztcbiAgdmFsaWRhdG9yQWRkcmVzczI6IHN0cmluZztcbn1cblxuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIHRlc3QgdHJhbnNhY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUZXN0VHJhbnNhY3Rpb24ge1xuICBoYXNoOiBzdHJpbmc7XG4gIHNpZ25hdHVyZTogc3RyaW5nO1xuICBzaWduZWRUeEJhc2U2NDogc3RyaW5nO1xuICBhY2NvdW50TnVtYmVyOiBudW1iZXI7XG4gIHNlcXVlbmNlOiBudW1iZXI7XG4gIHNlbmRlcj86IHN0cmluZztcbiAgcmVjaXBpZW50Pzogc3RyaW5nO1xuICByZWNpcGllbnQyPzogc3RyaW5nOyAvLyBPcHRpb25hbCBmb3IgbXVsdGktc2VuZCB0cmFuc2FjdGlvbnNcbiAgbWVtbz86IHN0cmluZztcbiAgcHViS2V5Pzogc3RyaW5nO1xuICBwcml2YXRlS2V5Pzogc3RyaW5nO1xuICBzZW5kQW1vdW50Pzogc3RyaW5nO1xuICBzZW5kQW1vdW50Mj86IHN0cmluZzsgLy8gT3B0aW9uYWwgZm9yIG11bHRpLXNlbmQgdHJhbnNhY3Rpb25zXG4gIGZlZUFtb3VudD86IHN0cmluZztcbiAgZ2FzQnVkZ2V0PzogR2FzQnVkZ2V0O1xufVxuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgYWRkcmVzcyBkYXRhXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGVzdEFkZHJlc3NlcyB7XG4gIGFkZHJlc3MxOiBzdHJpbmc7XG4gIGFkZHJlc3MyOiBzdHJpbmc7XG4gIGFkZHJlc3MzOiBzdHJpbmc7XG4gIGFkZHJlc3M0Pzogc3RyaW5nO1xuICBhZGRyZXNzNT86IHN0cmluZztcbiAgYWRkcmVzczY/OiBzdHJpbmc7XG4gIHZhbGlkYXRvckFkZHJlc3MxOiBzdHJpbmc7XG4gIHZhbGlkYXRvckFkZHJlc3MyOiBzdHJpbmc7XG4gIHZhbGlkYXRvckFkZHJlc3MzPzogc3RyaW5nO1xuICB2YWxpZGF0b3JBZGRyZXNzND86IHN0cmluZztcbiAgbm9NZW1vSWRBZGRyZXNzOiBzdHJpbmc7XG4gIHZhbGlkTWVtb0lkQWRkcmVzczogc3RyaW5nO1xuICBpbnZhbGlkTWVtb0lkQWRkcmVzczogc3RyaW5nO1xuICBtdWx0aXBsZU1lbW9JZEFkZHJlc3M6IHN0cmluZztcbn1cblxuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIGJsb2NrIGhhc2ggZGF0YVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRlc3RCbG9ja0hhc2hlcyB7XG4gIGhhc2gxOiBzdHJpbmc7XG4gIGhhc2gyOiBzdHJpbmc7XG59XG5cbi8qKlxuICogSW50ZXJmYWNlIGZvciB0cmFuc2FjdGlvbiBJRHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUZXN0VHhJZHMge1xuICBoYXNoMTogc3RyaW5nO1xuICBoYXNoMjogc3RyaW5nO1xuICBoYXNoMzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgY29pbiBhbW91bnRzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGVzdENvaW5BbW91bnRzIHtcbiAgYW1vdW50MTogeyBhbW91bnQ6IHN0cmluZzsgZGVub206IHN0cmluZyB9O1xuICBhbW91bnQyOiB7IGFtb3VudDogc3RyaW5nOyBkZW5vbTogc3RyaW5nIH07XG4gIGFtb3VudDM6IHsgYW1vdW50OiBzdHJpbmc7IGRlbm9tOiBzdHJpbmcgfTtcbiAgYW1vdW50NDogeyBhbW91bnQ6IHN0cmluZzsgZGVub206IHN0cmluZyB9O1xuICBhbW91bnQ1OiB7IGFtb3VudDogc3RyaW5nOyBkZW5vbTogc3RyaW5nIH07XG59XG5cbi8qKlxuICogSW50ZXJmYWNlIGZvciBhIHRyYW5zYWN0aW9uIG1lc3NhZ2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUcmFuc2FjdGlvbk1lc3NhZ2Uge1xuICB0eXBlVXJsOiBzdHJpbmc7XG4gIHZhbHVlOiBhbnk7XG59XG5cbi8qKlxuICogSW50ZXJmYWNlIGZvciBnYXMgYnVkZ2V0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2FzQnVkZ2V0IHtcbiAgYW1vdW50OiB7IGRlbm9tOiBzdHJpbmc7IGFtb3VudDogc3RyaW5nIH1bXTtcbiAgZ2FzTGltaXQ6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIGEgYmFzaWMgdHJhbnNhY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUZXN0U2VuZFRyYW5zYWN0aW9uIHtcbiAgaGFzaDogc3RyaW5nO1xuICBzaWduYXR1cmU6IHN0cmluZztcbiAgc2lnbmVkVHhCYXNlNjQ6IHN0cmluZztcbiAgc2VuZGVyOiBzdHJpbmc7XG4gIHJlY2lwaWVudD86IHN0cmluZztcbiAgY2hhaW5JZDogc3RyaW5nO1xuICBhY2NvdW50TnVtYmVyOiBudW1iZXI7XG4gIHNlcXVlbmNlOiBudW1iZXI7XG4gIHNlbmRBbW91bnQ/OiBzdHJpbmc7XG4gIGZlZUFtb3VudDogc3RyaW5nO1xuICBzZW5kTWVzc2FnZT86IFRyYW5zYWN0aW9uTWVzc2FnZTtcbiAgZ2FzQnVkZ2V0PzogR2FzQnVkZ2V0O1xuICBtZW1vPzogc3RyaW5nO1xuICBmcm9tPzogc3RyaW5nO1xuICB0bz86IHN0cmluZztcbiAgcHViS2V5Pzogc3RyaW5nO1xuICBwcml2YXRlS2V5Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgYSBtdWx0aS1zZW5kIHRyYW5zYWN0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGVzdE11bHRpU2VuZFRyYW5zYWN0aW9uIHtcbiAgaGFzaDogc3RyaW5nO1xuICBzaWduYXR1cmU6IHN0cmluZztcbiAgc2lnbmVkVHhCYXNlNjQ6IHN0cmluZztcbiAgc2VuZGVyOiBzdHJpbmc7XG4gIGNoYWluSWQ6IHN0cmluZztcbiAgYWNjb3VudE51bWJlcjogbnVtYmVyO1xuICBzZXF1ZW5jZTogbnVtYmVyO1xuICBtZW1vPzogc3RyaW5nO1xuICBzZW5kTWVzc2FnZXM/OiBUcmFuc2FjdGlvbk1lc3NhZ2VbXTtcbiAgZ2FzQnVkZ2V0PzogR2FzQnVkZ2V0O1xuICBzZW5kQW1vdW50Pzogc3RyaW5nO1xuICBzZW5kQW1vdW50Mj86IHN0cmluZztcbiAgcmVjaXBpZW50Pzogc3RyaW5nO1xuICByZWNpcGllbnQyPzogc3RyaW5nO1xuICBwdWJLZXk/OiBzdHJpbmc7XG4gIHByaXZhdGVLZXk/OiBzdHJpbmc7XG4gIGZlZUFtb3VudD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBNYWluIGludGVyZmFjZSBmb3IgY29pbiB0ZXN0IGRhdGFcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb2luVGVzdERhdGEge1xuICBtYWlubmV0TmFtZTogc3RyaW5nO1xuICBtYWlubmV0Q29pbjogc3RyaW5nO1xuICB0ZXN0bmV0Q29pbjogc3RyaW5nO1xuICB0ZXN0bmV0TmFtZTogc3RyaW5nO1xuICBmYW1pbHk6IHN0cmluZztcbiAgZGVjaW1hbFBsYWNlczogbnVtYmVyO1xuICBiYXNlRGVub206IHN0cmluZztcbiAgY2hhaW5JZDogc3RyaW5nO1xuICBzZW5kZXJBZGRyZXNzOiBzdHJpbmc7XG4gIHB1YktleTogc3RyaW5nO1xuICBwcml2YXRlS2V5OiBzdHJpbmc7XG4gIHZhbGlkYXRvclByZWZpeDogc3RyaW5nO1xuICBhZGRyZXNzUHJlZml4OiBzdHJpbmc7XG4gIGFkZHJlc3NlczogVGVzdEFkZHJlc3NlcztcbiAgYmxvY2tIYXNoZXM6IFRlc3RCbG9ja0hhc2hlcztcbiAgdHhJZHM6IFRlc3RUeElkcztcbiAgY29pbkFtb3VudHM6IFRlc3RDb2luQW1vdW50cztcbiAgdGVzdFNlbmRUeDogVGVzdFNlbmRUcmFuc2FjdGlvbjtcbiAgdGVzdFNlbmRUeDI6IFRlc3RTZW5kVHJhbnNhY3Rpb247XG4gIHRlc3RTZW5kTWFueVR4OiBUZXN0TXVsdGlTZW5kVHJhbnNhY3Rpb247XG4gIHRlc3RUeFdpdGhNZW1vOiBUZXN0U2VuZFRyYW5zYWN0aW9uO1xufVxuIl19