Skip to content

Commit 4ade970

Browse files
committed
feat: speedup functional test feature_governance.py by generating less blocks
1 parent 47def13 commit 4ade970

File tree

1 file changed

+16
-20
lines changed

1 file changed

+16
-20
lines changed

test/functional/feature_governance.py

Lines changed: 16 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,16 @@ class DashGovernanceTest (DashTestFramework):
1515
def set_test_params(self):
1616
self.set_dash_test_params(6, 5, [[
1717
"-budgetparams=10:10:10",
18-
'-testactivationheight=v20@240',
18+
'-testactivationheight=v20@160',
1919
]] * 6, fast_dip3_enforcement=True)
2020

2121
def check_superblockbudget(self, v20_active):
2222
v20_state = self.nodes[0].getblockchaininfo()["softforks"]["v20"]
2323
assert_equal(v20_state["active"], v20_active)
24-
assert_equal(self.nodes[0].getsuperblockbudget(200), self.expected_old_budget)
25-
assert_equal(self.nodes[0].getsuperblockbudget(220), self.expected_old_budget)
26-
assert_equal(self.nodes[0].getsuperblockbudget(240), self.expected_v20_budget)
27-
assert_equal(self.nodes[0].getsuperblockbudget(260), self.expected_v20_budget)
24+
assert_equal(self.nodes[0].getsuperblockbudget(120), self.expected_old_budget)
25+
assert_equal(self.nodes[0].getsuperblockbudget(140), self.expected_old_budget)
26+
assert_equal(self.nodes[0].getsuperblockbudget(160), self.expected_v20_budget)
27+
assert_equal(self.nodes[0].getsuperblockbudget(180), self.expected_v20_budget)
2828

2929
def check_superblock(self):
3030
# Make sure Superblock has only payments that fit into the budget
@@ -76,7 +76,7 @@ def run_test(self):
7676
sb_cycle = 20
7777
sb_maturity_window = 10
7878
sb_immaturity_window = sb_cycle - sb_maturity_window
79-
self.expected_old_budget = satoshi_round("928.57142840")
79+
self.expected_old_budget = satoshi_round("1000")
8080
self.expected_v20_budget = satoshi_round("18.57142860")
8181

8282
self.nodes[0].sporkupdate("SPORK_2_INSTANTSEND_ENABLED", 4070908800)
@@ -85,21 +85,17 @@ def run_test(self):
8585

8686
assert_equal(len(self.nodes[0].gobject("list-prepared")), 0)
8787

88-
# TODO: drop these extra 80 blocks - doesn't work without them
89-
self.nodes[0].generate(80)
90-
self.bump_mocktime(80)
91-
9288
self.nodes[0].generate(3)
9389
self.bump_mocktime(3)
9490
self.sync_blocks()
95-
assert_equal(self.nodes[0].getblockcount(), 210)
91+
assert_equal(self.nodes[0].getblockcount(), 130)
9692
assert_equal(self.nodes[0].getblockchaininfo()["softforks"]["v20"]["active"], False)
9793
self.check_superblockbudget(False)
9894

9995
self.nodes[0].generate(10)
10096
self.bump_mocktime(10)
10197
self.sync_blocks()
102-
assert_equal(self.nodes[0].getblockcount(), 220)
98+
assert_equal(self.nodes[0].getblockcount(), 140)
10399
assert_equal(self.nodes[0].getblockchaininfo()["softforks"]["v20"]["active"], False)
104100
self.check_superblockbudget(False)
105101

@@ -160,8 +156,8 @@ def run_test(self):
160156

161157
# Move until 1 block before the Superblock maturity window starts
162158
n = sb_immaturity_window - block_count % sb_cycle
163-
# v20 is expected to be activate since block 240
164-
assert block_count + n < 240
159+
# v20 is expected to be activate since block 160
160+
assert block_count + n < 160
165161
for _ in range(n - 1):
166162
self.nodes[0].generate(1)
167163
self.bump_mocktime(1)
@@ -203,7 +199,7 @@ def run_test(self):
203199
# Move 1 block enabling the Superblock maturity window on non-isolated nodes
204200
self.nodes[0].generate(1)
205201
self.bump_mocktime(1)
206-
assert_equal(self.nodes[0].getblockcount(), 230)
202+
assert_equal(self.nodes[0].getblockcount(), 150)
207203
assert_equal(self.nodes[0].getblockchaininfo()["softforks"]["v20"]["active"], False)
208204
self.check_superblockbudget(False)
209205

@@ -282,8 +278,8 @@ def sync_gov(node):
282278
self.nodes[0].generate(1)
283279
self.bump_mocktime(1)
284280
self.sync_blocks()
285-
# comparing to 239 because bip9 forks are active when the tip is one block behind the activation height
286-
self.check_superblockbudget(block_count + i + 1 >= 239)
281+
# comparing to 159 because bip9 forks are active when the tip is one block behind the activation height
282+
self.check_superblockbudget(block_count + i + 1 >= 159)
287283

288284
self.check_superblockbudget(True)
289285
self.check_superblock()
@@ -307,12 +303,12 @@ def sync_gov(node):
307303
self.bump_mocktime(1)
308304
self.sync_blocks()
309305
# Wait for new trigger and votes
310-
self.wait_until(lambda: have_trigger_for_height(self.nodes, 260))
306+
self.wait_until(lambda: have_trigger_for_height(self.nodes, 180))
311307
# Mine superblock
312308
self.nodes[0].generate(1)
313309
self.bump_mocktime(1)
314310
self.sync_blocks()
315-
assert_equal(self.nodes[0].getblockcount(), 260)
311+
assert_equal(self.nodes[0].getblockcount(), 180)
316312
assert_equal(self.nodes[0].getblockchaininfo()["softforks"]["v20"]["active"], True)
317313

318314
# Mine and check a couple more superblocks
@@ -322,7 +318,7 @@ def sync_gov(node):
322318
self.bump_mocktime(1)
323319
self.sync_blocks()
324320
# Wait for new trigger and votes
325-
sb_block_height = 260 + (i + 1) * sb_cycle
321+
sb_block_height = 180 + (i + 1) * sb_cycle
326322
self.wait_until(lambda: have_trigger_for_height(self.nodes, sb_block_height))
327323
# Mine superblock
328324
self.nodes[0].generate(1)

0 commit comments

Comments
 (0)