mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-03-05 14:06:27 -05:00
Merge bitcoin/bitcoin#23124: Fix feature_segwit.py failure due to witness
b207971465
Fix feature_segwit failure due to witness (Samuel Dobson) Pull request description: Fixes #23116 The failure is due to sometimes spending segwit outputs, which add an additional 1 sigop in the witness, added to the 2 (*4) in the outputs. ACKs for top commit: brunoerg: tACKb207971465
Tree-SHA512: 7e3c09d162e6941a3028514e95ae3aab2a3f858e2f056229c5faff5e37ece897dc63e3f8c0e07fad9fc4621b74a6dee5ff777e910b2b009a41bb6e72a09217bd
This commit is contained in:
commit
d648bbb0a7
1 changed files with 3 additions and 1 deletions
|
@ -236,12 +236,14 @@ class SegWitTest(BitcoinTestFramework):
|
|||
|
||||
self.log.info("Verify sigops are counted in GBT with BIP141 rules after the fork")
|
||||
txid = self.nodes[0].sendtoaddress(self.nodes[0].getnewaddress(), 1)
|
||||
raw_tx = self.nodes[0].getrawtransaction(txid, True)
|
||||
tmpl = self.nodes[0].getblocktemplate({'rules': ['segwit']})
|
||||
assert_greater_than_or_equal(tmpl['sizelimit'], 3999577) # actual maximum size is lower due to minimum mandatory non-witness data
|
||||
assert_equal(tmpl['weightlimit'], 4000000)
|
||||
assert_equal(tmpl['sigoplimit'], 80000)
|
||||
assert_equal(tmpl['transactions'][0]['txid'], txid)
|
||||
assert_equal(tmpl['transactions'][0]['sigops'], 8)
|
||||
expected_sigops = 9 if 'txinwitness' in raw_tx["vin"][0] else 8
|
||||
assert_equal(tmpl['transactions'][0]['sigops'], expected_sigops)
|
||||
assert '!segwit' in tmpl['rules']
|
||||
|
||||
self.generate(self.nodes[0], 1) # Mine a block to clear the gbt cache
|
||||
|
|
Loading…
Add table
Reference in a new issue