From c88ab19802a559e27712f518fcfef0213c044d29 Mon Sep 17 00:00:00 2001 From: cdc-Hitesh Date: Wed, 23 Nov 2022 10:34:33 +0800 Subject: [PATCH 1/2] #391 Bugfix- add MsgUnjailV2 to the typeurl mapping --- .../transaction/common/constants/typeurl.ts | 2 +- .../msg/slashing/MsgUnjail.spec.ts | 27 +++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/lib/src/transaction/common/constants/typeurl.ts b/lib/src/transaction/common/constants/typeurl.ts index 22d1d4b..d54587d 100644 --- a/lib/src/transaction/common/constants/typeurl.ts +++ b/lib/src/transaction/common/constants/typeurl.ts @@ -139,7 +139,7 @@ export const typeUrlToMsgClassMapping = (cro: any, typeUrl: string) => { // slashing case COSMOS_MSG_TYPEURL.slashing.MsgUnjail: - return cro.v2.slashing.MsgUnjail; + return cro.v2.slashing.MsgUnjailV2; default: throw new Error(`${typeUrl} not supported.`); } diff --git a/lib/src/transaction/msg/slashing/MsgUnjail.spec.ts b/lib/src/transaction/msg/slashing/MsgUnjail.spec.ts index d8fbfbb..45cf3b4 100644 --- a/lib/src/transaction/msg/slashing/MsgUnjail.spec.ts +++ b/lib/src/transaction/msg/slashing/MsgUnjail.spec.ts @@ -87,6 +87,33 @@ describe('Testing MsgUnjail', function () { ); }); + it('Should not throw on using V2 methods for transaction management', function () { + const anyKeyPair = Secp256k1KeyPair.fromPrivKey( + Bytes.fromHexString('66633d18513bec30dd11a209f1ceb1787aa9e2069d5d47e590174dc9665102b3'), + ); + + const MsgUnjail = new cro.v2.slashing.MsgUnjailV2({ + validatorAddress: 'tcrocncl1j7pej8kplem4wt50p4hfvndhuw5jprxxxtenvr', + }); + + const anySigner = { + publicKey: anyKeyPair.getPubKey(), + accountNumber: new Big(0), + accountSequence: new Big(2), + }; + + const rawTx = new cro.v2.RawTransactionV2(); + + const signableTxV2 = rawTx.appendMessage(MsgUnjail).addSigner(anySigner).toSignable(); + + const signedTx = signableTxV2.setSignature(0, anyKeyPair.sign(signableTxV2.toSignDocumentHash(0))).toSigned(); + + const signedTxHex = signedTx.encode().toHexString(); + expect(signedTxHex).to.be.eql( + '0a590a570a222f636f736d6f732e736c617368696e672e763162657461312e4d7367556e6a61696c12310a2f7463726f636e636c316a3770656a386b706c656d347774353070346866766e64687577356a707278787874656e767212580a500a460a1f2f636f736d6f732e63727970746f2e736563703235366b312e5075624b657912230a2103fd0d560b6c4aa1ca16721d039a192867c3457e19dad553edb98e7ba88b159c2712040a0208011802120410c09a0c1a40186e87b0b41928e69a1211c1fb5ebcb4c11fa6350f5cc830fa5f38f36f37f66e00d062707672b5d4ebf98cd5e3c7c4b40562707321bb9e8f2d3d605d8beb7b13', + ); + }); + it('Should validate MsgUnjail provided addresses with network config', function () { const params2 = { validatorAddress: 'tcro165tzcrh2yl83g8qeqxueg2g5gzgu57y3fe3kc3', From fbf50bb652c00726b8c6e8376284a47894c9e8b8 Mon Sep 17 00:00:00 2001 From: cdc-Hitesh Date: Wed, 23 Nov 2022 12:02:23 +0800 Subject: [PATCH 2/2] Increment the package patch version --- CHANGELOG.md | 3 +++ package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 20c2e52..ef701f9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,9 @@ All notable changes to this project will be documented in this file. +## v1.1.1 +- Bugfix for `MsgUnjailV2` transaction management + ## v1.1.0 - Added support for `MsgUnjail` diff --git a/package-lock.json b/package-lock.json index df29f92..2f09c67 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@crypto-org-chain/chain-jslib", - "version": "1.1.0", + "version": "1.1.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@crypto-org-chain/chain-jslib", - "version": "1.1.0", + "version": "1.1.1", "license": "Apache-2.0", "dependencies": { "@cosmjs/amino": "0.25.0-alpha.2", diff --git a/package.json b/package.json index 8120c14..6fd6d83 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@crypto-org-chain/chain-jslib", - "version": "1.1.0", + "version": "1.1.1", "description": "Crypto.org Chain JavaScript library", "author": "Crypto.org ", "license": "Apache-2.0",