mirror of
https://github.com/dashpay/dash.git
synced 2024-12-25 03:52:49 +01:00
refactor: Refactor CCbTx
python class to match c++ declaration
This commit is contained in:
parent
38a0b5ac04
commit
519966efff
@ -204,7 +204,7 @@ class LLMQCoinbaseCommitmentsTest(DashTestFramework):
|
|||||||
cbtx = CCbTx()
|
cbtx = CCbTx()
|
||||||
cbtx.deserialize(BytesIO(d.cbTx.vExtraPayload))
|
cbtx.deserialize(BytesIO(d.cbTx.vExtraPayload))
|
||||||
|
|
||||||
if cbtx.version >= 2:
|
if cbtx.nVersion >= 2:
|
||||||
hashes = []
|
hashes = []
|
||||||
for qc in newQuorumList.values():
|
for qc in newQuorumList.values():
|
||||||
hashes.append(hash256(qc.serialize()))
|
hashes.append(hash256(qc.serialize()))
|
||||||
|
@ -252,7 +252,7 @@ class LLMQQuorumRotationTest(DashTestFramework):
|
|||||||
cbtx = CCbTx()
|
cbtx = CCbTx()
|
||||||
cbtx.deserialize(BytesIO(d.cbTx.vExtraPayload))
|
cbtx.deserialize(BytesIO(d.cbTx.vExtraPayload))
|
||||||
|
|
||||||
if cbtx.version >= 2:
|
if cbtx.nVersion >= 2:
|
||||||
hashes = []
|
hashes = []
|
||||||
for qc in newQuorumList.values():
|
for qc in newQuorumList.values():
|
||||||
hashes.append(hash256(qc.serialize()))
|
hashes.append(hash256(qc.serialize()))
|
||||||
|
@ -1094,14 +1094,14 @@ class CMerkleBlock:
|
|||||||
|
|
||||||
|
|
||||||
class CCbTx:
|
class CCbTx:
|
||||||
__slots__ = ("version", "height", "merkleRootMNList", "merkleRootQuorums", "bestCLHeightDiff", "bestCLSignature", "lockedAmount")
|
__slots__ = ("nVersion", "nHeight", "merkleRootMNList", "merkleRootQuorums", "bestCLHeightDiff", "bestCLSignature", "assetLockedAmount")
|
||||||
|
|
||||||
def __init__(self, version=None, height=None, merkleRootMNList=None, merkleRootQuorums=None, bestCLHeightDiff=None, bestCLSignature=None, lockedAmount=None):
|
def __init__(self, version=None, height=None, merkleRootMNList=None, merkleRootQuorums=None, bestCLHeightDiff=None, bestCLSignature=None, assetLockedAmount=None):
|
||||||
self.set_null()
|
self.set_null()
|
||||||
if version is not None:
|
if version is not None:
|
||||||
self.version = version
|
self.nVersion = version
|
||||||
if height is not None:
|
if height is not None:
|
||||||
self.height = height
|
self.nHeight = height
|
||||||
if merkleRootMNList is not None:
|
if merkleRootMNList is not None:
|
||||||
self.merkleRootMNList = merkleRootMNList
|
self.merkleRootMNList = merkleRootMNList
|
||||||
if merkleRootQuorums is not None:
|
if merkleRootQuorums is not None:
|
||||||
@ -1110,42 +1110,46 @@ class CCbTx:
|
|||||||
self.bestCLHeightDiff = bestCLHeightDiff
|
self.bestCLHeightDiff = bestCLHeightDiff
|
||||||
if bestCLSignature is not None:
|
if bestCLSignature is not None:
|
||||||
self.bestCLSignature = bestCLSignature
|
self.bestCLSignature = bestCLSignature
|
||||||
if lockedAmount is not None:
|
if assetLockedAmount is not None:
|
||||||
self.lockedAmount = lockedAmount
|
self.assetLockedAmount = assetLockedAmount
|
||||||
|
|
||||||
def set_null(self):
|
def set_null(self):
|
||||||
self.version = 0
|
self.nVersion = 0
|
||||||
self.height = 0
|
self.nHeight = 0
|
||||||
self.merkleRootMNList = None
|
self.merkleRootMNList = None
|
||||||
|
self.merkleRootQuorums = None
|
||||||
self.bestCLHeightDiff = 0
|
self.bestCLHeightDiff = 0
|
||||||
self.bestCLSignature = b'\x00' * 96
|
self.bestCLSignature = b'\x00' * 96
|
||||||
self.lockedAmount = 0
|
self.assetLockedAmount = 0
|
||||||
|
|
||||||
def deserialize(self, f):
|
def deserialize(self, f):
|
||||||
self.version = struct.unpack("<H", f.read(2))[0]
|
self.nVersion = struct.unpack("<H", f.read(2))[0]
|
||||||
self.height = struct.unpack("<i", f.read(4))[0]
|
self.nHeight = struct.unpack("<i", f.read(4))[0]
|
||||||
self.merkleRootMNList = deser_uint256(f)
|
self.merkleRootMNList = deser_uint256(f)
|
||||||
if self.version >= 2:
|
if self.nVersion >= 2:
|
||||||
self.merkleRootQuorums = deser_uint256(f)
|
self.merkleRootQuorums = deser_uint256(f)
|
||||||
if self.version >= 3:
|
if self.nVersion >= 3:
|
||||||
self.bestCLHeightDiff = deser_compact_size(f)
|
self.bestCLHeightDiff = deser_compact_size(f)
|
||||||
self.bestCLSignature = f.read(96)
|
self.bestCLSignature = f.read(96)
|
||||||
self.lockedAmount = struct.unpack("<q", f.read(8))[0]
|
self.assetLockedAmount = struct.unpack("<q", f.read(8))[0]
|
||||||
|
|
||||||
|
|
||||||
def serialize(self):
|
def serialize(self):
|
||||||
r = b""
|
r = b""
|
||||||
r += struct.pack("<H", self.version)
|
r += struct.pack("<H", self.nVersion)
|
||||||
r += struct.pack("<i", self.height)
|
r += struct.pack("<i", self.nHeight)
|
||||||
r += ser_uint256(self.merkleRootMNList)
|
r += ser_uint256(self.merkleRootMNList)
|
||||||
if self.version >= 2:
|
if self.nVersion >= 2:
|
||||||
r += ser_uint256(self.merkleRootQuorums)
|
r += ser_uint256(self.merkleRootQuorums)
|
||||||
if self.version >= 3:
|
if self.nVersion >= 3:
|
||||||
r += ser_compact_size(self.bestCLHeightDiff)
|
r += ser_compact_size(self.bestCLHeightDiff)
|
||||||
r += self.bestCLSignature
|
r += self.bestCLSignature
|
||||||
r += struct.pack("<q", self.lockedAmount)
|
r += struct.pack("<q", self.assetLockedAmount)
|
||||||
return r
|
return r
|
||||||
|
|
||||||
|
def __repr__(self):
|
||||||
|
return "CCbTx(nVersion=%i nHeight=%i merkleRootMNList=%s merkleRootQuorums=%s bestCLHeightDiff=%i bestCLSignature=%s assetLockedAmount=%i)" \
|
||||||
|
% (self.nVersion, self.nHeight, self.merkleRootMNList.hex(), self.merkleRootQuorums.hex(), self.bestCLHeightDiff, self.bestCLSignature.hex(), self.assetLockedAmount)
|
||||||
|
|
||||||
|
|
||||||
class CAssetLockTx:
|
class CAssetLockTx:
|
||||||
__slots__ = ("version", "creditOutputs")
|
__slots__ = ("version", "creditOutputs")
|
||||||
|
Loading…
Reference in New Issue
Block a user