Merge pull request #2556 from rnicoll/1.21-auxpow-test-set-base-version

1.21 auxpow test set base version
This commit is contained in:
Patrick Lodder 2021-09-10 03:41:17 +02:00 committed by GitHub
commit b262c2b3be
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 13 additions and 9 deletions

View file

@ -151,7 +151,7 @@ class AssumeValidTest(BitcoinTestFramework):
# Bury the assumed valid block 2240 deep
for _ in range(2240):
block = create_block(self.tip, create_coinbase(height), self.block_time)
block.nVersion = 4
block.set_base_version(4)
block.solve()
self.blocks.append(block)
self.tip = block.sha256

View file

@ -93,7 +93,7 @@ class BIP65Test(BitcoinTestFramework):
tip = self.nodes[0].getbestblockhash()
block_time = self.nodes[0].getblockheader(tip)['mediantime'] + 1
block = create_block(int(tip, 16), create_coinbase(CLTV_HEIGHT - 1), block_time)
block.nVersion = 3
block.set_base_version(3)
block.vtx.append(spendtx)
block.hashMerkleRoot = block.calc_merkle_root()
block.solve()
@ -107,7 +107,7 @@ class BIP65Test(BitcoinTestFramework):
tip = block.sha256
block_time += 1
block = create_block(tip, create_coinbase(CLTV_HEIGHT), block_time)
block.nVersion = 3
block.set_base_version(3)
block.solve()
with self.nodes[0].assert_debug_log(expected_msgs=['{}, bad-version(0x00000003)'.format(block.hash)]):
@ -116,7 +116,7 @@ class BIP65Test(BitcoinTestFramework):
peer.sync_with_ping()
self.log.info("Test that invalid-according-to-cltv transactions cannot appear in a block")
block.nVersion = 4
block.set_base_version(4)
spendtx = create_transaction(self.nodes[0], self.coinbase_txids[1],
self.nodeaddress, amount=1.0)

View file

@ -170,7 +170,7 @@ class BIP68_112_113Test(BitcoinTestFramework):
def create_test_block(self, txs):
block = create_block(self.tip, create_coinbase(self.tipheight + 1), self.last_block_time + 600)
block.nVersion = 4
block.set_base_version(4)
block.vtx.extend(txs)
block.hashMerkleRoot = block.calc_merkle_root()
block.rehash()

View file

@ -77,7 +77,7 @@ class BIP66Test(BitcoinTestFramework):
tip = self.nodes[0].getbestblockhash()
block_time = self.nodes[0].getblockheader(tip)['mediantime'] + 1
block = create_block(int(tip, 16), create_coinbase(DERSIG_HEIGHT - 1), block_time)
block.nVersion = 2
block.set_base_version(2)
block.vtx.append(spendtx)
block.hashMerkleRoot = block.calc_merkle_root()
block.rehash()
@ -92,7 +92,7 @@ class BIP66Test(BitcoinTestFramework):
tip = block.sha256
block_time += 1
block = create_block(tip, create_coinbase(DERSIG_HEIGHT), block_time)
block.nVersion = 2
block.set_base_version(2)
block.rehash()
block.solve()
@ -102,7 +102,7 @@ class BIP66Test(BitcoinTestFramework):
peer.sync_with_ping()
self.log.info("Test that transactions with non-DER signatures cannot appear in a block")
block.nVersion = 3
block.set_base_version(3)
spendtx = create_transaction(self.nodes[0], self.coinbase_txids[1],
self.nodeaddress, amount=1.0)

View file

@ -622,7 +622,8 @@ class CBlockHeader:
self.calc_sha256()
def set_null(self):
self.nVersion = 1
self.set_base_version(1)
self.hashPrevBlock = 0
self.hashMerkleRoot = 0
self.nTime = 0
@ -632,6 +633,9 @@ class CBlockHeader:
self.hash = None
self.scrypt256 = None
def set_base_version(self, n):
self.nVersion = n
def deserialize(self, f):
self.nVersion = struct.unpack("<i", f.read(4))[0]
self.hashPrevBlock = deser_uint256(f)