diff --git a/web3.js/test/transaction.test.js b/web3.js/test/transaction.test.js index 1d71a8b233..68a10b30ce 100644 --- a/web3.js/test/transaction.test.js +++ b/web3.js/test/transaction.test.js @@ -439,3 +439,22 @@ test('serialize unsigned transaction', () => { expectedTransaction, ); }); + +test('get sign data for transaction', () => { + const from_keypair = nacl.sign.keyPair.fromSeed( + Uint8Array.from(Array(32).fill(1)), + ); + const from = new Account(Buffer.from(from_keypair.secretKey)); + const to = new PublicKey(2); + const recentBlockhash = new PublicKey(3).toBuffer(); + var tx = SystemProgram.transfer({ + fromPubkey: from.publicKey, + toPubkey: to, + lamports: 42, + }); + tx.recentBlockhash = bs58.encode(recentBlockhash); + const tx_bytes = tx.signData; + const signature = nacl.sign.detached(tx_bytes, from.secretKey); + tx.addSignature(from.publicKey, signature); + expect(tx.verifySignatures()).toBe(true); +});