Skip to content

Commit e4be0e9

Browse files
committed
test: add -maxtipage test for the maximum allowable value
1 parent a451e83 commit e4be0e9

File tree

1 file changed

+14
-9
lines changed

1 file changed

+14
-9
lines changed

test/functional/feature_maxtipage.py

+14-9
Original file line numberDiff line numberDiff line change
@@ -22,23 +22,24 @@ def set_test_params(self):
2222
self.setup_clean_chain = True
2323
self.num_nodes = 2
2424

25-
def test_maxtipage(self, maxtipage, set_parameter=True):
25+
def test_maxtipage(self, maxtipage, set_parameter=True, test_deltas=True):
2626
node_miner = self.nodes[0]
2727
node_ibd = self.nodes[1]
2828

2929
self.restart_node(1, [f'-maxtipage={maxtipage}'] if set_parameter else None)
3030
self.connect_nodes(0, 1)
31-
32-
# tips older than maximum age -> stay in IBD
3331
cur_time = int(time.time())
34-
node_ibd.setmocktime(cur_time)
35-
for delta in [5, 4, 3, 2, 1]:
36-
node_miner.setmocktime(cur_time - maxtipage - delta)
37-
self.generate(node_miner, 1)
38-
assert_equal(node_ibd.getblockchaininfo()['initialblockdownload'], True)
32+
33+
if test_deltas:
34+
# tips older than maximum age -> stay in IBD
35+
node_ibd.setmocktime(cur_time)
36+
for delta in [5, 4, 3, 2, 1]:
37+
node_miner.setmocktime(cur_time - maxtipage - delta)
38+
self.generate(node_miner, 1)
39+
assert_equal(node_ibd.getblockchaininfo()['initialblockdownload'], True)
3940

4041
# tip within maximum age -> leave IBD
41-
node_miner.setmocktime(cur_time - maxtipage)
42+
node_miner.setmocktime(max(cur_time - maxtipage, 0))
4243
self.generate(node_miner, 1)
4344
assert_equal(node_ibd.getblockchaininfo()['initialblockdownload'], False)
4445

@@ -51,6 +52,10 @@ def run_test(self):
5152
self.log.info(f"Test IBD with maximum tip age of {hours} hours (-maxtipage={maxtipage}).")
5253
self.test_maxtipage(maxtipage)
5354

55+
max_long_val = 9223372036854775807
56+
self.log.info(f"Test IBD with highest allowable maximum tip age ({max_long_val}).")
57+
self.test_maxtipage(max_long_val, test_deltas=False)
58+
5459

5560
if __name__ == '__main__':
5661
MaxTipAgeTest().main()

0 commit comments

Comments
 (0)