mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-07-12 20:22:34 +02:00
Merge bitcoin/bitcoin#22510: test: add test for RPC error 'Transaction already in block chain'
2ebf2fe0e4
test: check for RPC error 'Transaction already in block chain' (-27) (Sebastian Falbesoner) Pull request description: This PR adds missing test coverage for the RPC error "Transaction already in block chain" (error code `RPC_VERIFY_ALREADY_IN_CHAIN` = `RPC_TRANSACTION_ALREADY_IN_CHAIN` = -27), which is thrown in the function `BroadcastTransaction` (src/node/transaction.cpp). ACKs for top commit: kristapsk: ACK2ebf2fe0e4
(ran linter, looked at changes and ran modified test and checked code in `src/node/transaction.cpp`) darosior: ACK2ebf2fe0e4
Tree-SHA512: 8bfbd3ff3da0cb3b8745f69b8ca2377f85fa99f0270750840b60e6ae43b5645c5c59b236993e8b2ad0444ec4171484e4f1ee23fa7e81b79d4222bcb623666fa5
This commit is contained in:
@ -515,6 +515,15 @@ class RawTransactionsTest(BitcoinTestFramework):
|
||||
assert_equal(testres['allowed'], True)
|
||||
self.nodes[2].sendrawtransaction(hexstring=rawTxSigned['hex'], maxfeerate='0.20000000')
|
||||
|
||||
self.log.info('sendrawtransaction/testmempoolaccept with tx that is already in the chain')
|
||||
self.nodes[2].generate(1)
|
||||
self.sync_blocks()
|
||||
for node in self.nodes:
|
||||
testres = node.testmempoolaccept([rawTxSigned['hex']])[0]
|
||||
assert_equal(testres['allowed'], False)
|
||||
assert_equal(testres['reject-reason'], 'txn-already-known')
|
||||
assert_raises_rpc_error(-27, 'Transaction already in block chain', node.sendrawtransaction, rawTxSigned['hex'])
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
RawTransactionsTest().main()
|
||||
|
Reference in New Issue
Block a user