Skip to content

Commit 26e98a8

Browse files
authored
Merge pull request #8 from random-zebra/2019_miller_tests
[Tests] fix solve_stake nTime / nStakeModifier
2 parents a428c83 + 78e838e commit 26e98a8

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

test/functional/test_framework/messages.py

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,14 @@ def ser_uint256(u):
9595
return rs
9696

9797

98+
def ser_uint64(u):
99+
rs = b""
100+
for i in range(2):
101+
rs += struct.pack("<I", u & 0xFFFFFFFF)
102+
u >>= 32
103+
return rs
104+
105+
98106
def uint256_from_str(s):
99107
r = 0
100108
t = struct.unpack("<IIIIIIII", s[:32])
@@ -468,7 +476,7 @@ def solve_stake(self, stakeModifier, prevouts):
468476
nvalue, txBlockTime = prevouts[prevout]
469477
target = int(target0 * nvalue / 100) % 2**256
470478
data = b""
471-
data += ser_uint256(stakeModifier)
479+
data += ser_uint64(stakeModifier)
472480
data += struct.pack("<I", txBlockTime)
473481
# prevout for zPoS is serial hashes hex strings
474482
if isinstance(prevout, str):
@@ -481,7 +489,8 @@ def solve_stake(self, stakeModifier, prevouts):
481489
self.prevoutStake = prevout
482490
loop = False
483491
break
484-
self.nTime += 1
492+
if loop:
493+
self.nTime += 1
485494
return True
486495

487496
def __repr__(self):

0 commit comments

Comments
 (0)