Skip to content

Commit ecb5135

Browse files
kwvgUdjinM6
andcommitted
test: cleanup generate logic in some governance functional tests
Co-authored-by: UdjinM6 <[email protected]>
1 parent 2560768 commit ecb5135

File tree

2 files changed

+14
-29
lines changed

2 files changed

+14
-29
lines changed

test/functional/feature_governance.py

Lines changed: 12 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -89,17 +89,15 @@ def run_test(self):
8989
assert_equal(len(self.nodes[0].gobject("list-prepared")), 0)
9090

9191
self.log.info("Check 1st superblock before v20")
92-
self.generate(self.nodes[0], 3, sync_fun=self.no_op)
9392
self.bump_mocktime(3)
94-
self.sync_blocks()
93+
self.generate(self.nodes[0], 3, sync_fun=self.sync_blocks())
9594
assert_equal(self.nodes[0].getblockcount(), 130)
9695
assert_equal(self.nodes[0].getblockchaininfo()["softforks"]["v20"]["active"], False)
9796
self.check_superblockbudget(False)
9897

9998
self.log.info("Check 2nd superblock before v20")
100-
self.generate(self.nodes[0], 10, sync_fun=self.no_op)
10199
self.bump_mocktime(10)
102-
self.sync_blocks()
100+
self.generate(self.nodes[0], 10, sync_fun=self.sync_blocks())
103101
assert_equal(self.nodes[0].getblockcount(), 140)
104102
assert_equal(self.nodes[0].getblockchaininfo()["softforks"]["v20"]["active"], False)
105103
self.check_superblockbudget(False)
@@ -117,9 +115,8 @@ def run_test(self):
117115
p1_collateral_prepare = prepare_object(self.nodes[0], 1, uint256_to_string(0), proposal_time, 1, "Proposal_1", self.p1_amount, self.p1_payout_address)
118116
p2_collateral_prepare = prepare_object(self.nodes[0], 1, uint256_to_string(0), proposal_time, 1, "Proposal_2", self.p2_amount, self.p2_payout_address)
119117

120-
self.generate(self.nodes[0], 6, sync_fun=self.no_op)
121118
self.bump_mocktime(6)
122-
self.sync_blocks()
119+
self.generate(self.nodes[0], 6, sync_fun=self.sync_blocks())
123120

124121
assert_equal(len(self.nodes[0].gobject("list-prepared")), 3)
125122
assert_equal(len(self.nodes[0].gobject("list")), 0)
@@ -165,9 +162,8 @@ def run_test(self):
165162
self.log.info("v20 is expected to be activate since block 160")
166163
assert block_count + n < 160
167164
for _ in range(n - 1):
168-
self.generate(self.nodes[0], 1, sync_fun=self.no_op)
169165
self.bump_mocktime(1)
170-
self.sync_blocks()
166+
self.generate(self.nodes[0], 1, sync_fun=self.sync_blocks())
171167
self.check_superblockbudget(False)
172168

173169
assert_equal(len(self.nodes[0].gobject("list", "valid", "triggers")), 0)
@@ -268,9 +264,8 @@ def sync_gov(node):
268264
assert_equal(more_triggers, False)
269265

270266
self.log.info("Move another block inside the Superblock maturity window")
271-
self.generate(self.nodes[0], 1, sync_fun=self.no_op)
272267
self.bump_mocktime(1)
273-
self.sync_blocks()
268+
self.generate(self.nodes[0], 1, sync_fun=self.sync_blocks())
274269

275270
self.log.info("Should see NO votes on both triggers now")
276271
self.wait_until(lambda: self.nodes[0].gobject("list", "valid", "triggers")[winning_trigger_hash]['NoCount'] == 1, timeout=5)
@@ -284,9 +279,8 @@ def sync_gov(node):
284279

285280
self.log.info("Move another block inside the Superblock maturity window")
286281
with self.nodes[1].assert_debug_log(["CGovernanceManager::VoteGovernanceTriggers"]):
287-
self.generate(self.nodes[0], 1, sync_fun=self.no_op)
288282
self.bump_mocktime(1)
289-
self.sync_blocks()
283+
self.generate(self.nodes[0], 1, sync_fun=self.sync_blocks())
290284

291285
self.log.info("Vote count should not change even though MNs are allowed to vote again")
292286
assert_equal(before, self.nodes[1].gobject("count")["votes"])
@@ -298,9 +292,8 @@ def sync_gov(node):
298292

299293
self.log.info("Move remaining n blocks until actual Superblock")
300294
for i in range(n):
301-
self.generate(self.nodes[0], 1, sync_fun=self.no_op)
302295
self.bump_mocktime(1)
303-
self.sync_blocks()
296+
self.generate(self.nodes[0], 1, sync_fun=self.sync_blocks())
304297
# comparing to 159 because bip9 forks are active when the tip is one block behind the activation height
305298
self.check_superblockbudget(block_count + i + 1 >= 159)
306299

@@ -310,9 +303,8 @@ def sync_gov(node):
310303
self.log.info("Move a few block past the recent superblock height and make sure we have no new votes")
311304
for _ in range(5):
312305
with self.nodes[1].assert_debug_log("", [f"Voting NO-FUNDING for trigger:{winning_trigger_hash} success"]):
313-
self.generate(self.nodes[0], 1, sync_fun=self.no_op)
314306
self.bump_mocktime(1)
315-
self.sync_blocks()
307+
self.generate(self.nodes[0], 1, sync_fun=self.sync_blocks())
316308
# Votes on both triggers should NOT change
317309
assert_equal(self.nodes[0].gobject("list", "valid", "triggers")[winning_trigger_hash]['NoCount'], 1)
318310
assert_equal(self.nodes[0].gobject("list", "valid", "triggers")[isolated_trigger_hash]['NoCount'], self.mn_count - 1)
@@ -322,31 +314,27 @@ def sync_gov(node):
322314

323315
self.log.info("Move remaining n blocks until the next Superblock")
324316
for _ in range(n - 1):
325-
self.generate(self.nodes[0], 1, sync_fun=self.no_op)
326317
self.bump_mocktime(1)
327-
self.sync_blocks()
318+
self.generate(self.nodes[0], 1, sync_fun=self.sync_blocks())
328319
self.log.info("Wait for new trigger and votes")
329320
self.wait_until(lambda: have_trigger_for_height(self.nodes, 180))
330321
self.log.info("Mine superblock")
331-
self.generate(self.nodes[0], 1, sync_fun=self.no_op)
332322
self.bump_mocktime(1)
333-
self.sync_blocks()
323+
self.generate(self.nodes[0], 1, sync_fun=self.sync_blocks())
334324
assert_equal(self.nodes[0].getblockcount(), 180)
335325
assert_equal(self.nodes[0].getblockchaininfo()["softforks"]["v20"]["active"], True)
336326

337327
self.log.info("Mine and check a couple more superblocks")
338328
for i in range(2):
339329
for _ in range(sb_cycle - 1):
340-
self.generate(self.nodes[0], 1, sync_fun=self.no_op)
341330
self.bump_mocktime(1)
342-
self.sync_blocks()
331+
self.generate(self.nodes[0], 1, sync_fun=self.sync_blocks())
343332
# Wait for new trigger and votes
344333
sb_block_height = 180 + (i + 1) * sb_cycle
345334
self.wait_until(lambda: have_trigger_for_height(self.nodes, sb_block_height))
346335
# Mine superblock
347-
self.generate(self.nodes[0], 1, sync_fun=self.no_op)
348336
self.bump_mocktime(1)
349-
self.sync_blocks()
337+
self.generate(self.nodes[0], 1, sync_fun=self.sync_blocks())
350338
assert_equal(self.nodes[0].getblockcount(), sb_block_height)
351339
assert_equal(self.nodes[0].getblockchaininfo()["softforks"]["v20"]["active"], True)
352340
self.check_superblockbudget(True)

test/functional/feature_governance_cl.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -83,9 +83,7 @@ def run_test(self):
8383
p1_collateral_prepare = self.prepare_object(1, uint256_to_string(0), proposal_time, 1, "Proposal_1", self.p1_amount, self.p1_payout_address)
8484
self.bump_mocktime(60 * 10 + 1)
8585

86-
self.generate(self.nodes[0], 6, sync_fun=self.no_op)
87-
self.bump_mocktime(6 * 156)
88-
self.sync_blocks()
86+
self.generate(self.nodes[0], 6, sync_fun=self.sync_blocks())
8987

9088
assert_equal(len(self.nodes[0].gobject("list-prepared")), 2)
9189
assert_equal(len(self.nodes[0].gobject("list")), 0)
@@ -158,10 +156,9 @@ def run_test(self):
158156
self.log.info("Reconnect isolated node and confirm the next ChainLock will let it sync")
159157
self.reconnect_isolated_node(5, 0)
160158
assert_equal(self.nodes[5].mnsync("status")["IsSynced"], False)
161-
self.generate(self.nodes[0], 1, sync_fun=self.no_op)
162159
# NOTE: bumping mocktime too much after recent reconnect can result in "timeout downloading block"
163160
self.bump_mocktime(1)
164-
self.sync_blocks()
161+
self.generate(self.nodes[0], 1, sync_fun=self.sync_blocks())
165162

166163

167164
if __name__ == '__main__':

0 commit comments

Comments
 (0)