mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-02-22 06:52:36 +01:00
Merge #21254: test: Avoid connecting to real network when running tests
fa730e9157
test: Avoid connecting to real network when running tests (MarcoFalke)fa1b713941
test: Assume node is running in subtests (MarcoFalke) Pull request description: Introduced in #19884 ACKs for top commit: Sjors: ACKfa730e9157
Tree-SHA512: fe132a9ffe2fae1ab16857a3dec9839526fdf74d27a1ae794fbffca8356f639c4b916dc888b260281e9cc793916706c18d1687ebb5a076d4e1c481d218d308d3
This commit is contained in:
commit
c0e44ee8e4
2 changed files with 30 additions and 22 deletions
|
@ -19,7 +19,7 @@ class ConfArgsTest(BitcoinTestFramework):
|
|||
self.wallet_names = []
|
||||
|
||||
def test_config_file_parser(self):
|
||||
# Assume node is stopped
|
||||
self.stop_node(0)
|
||||
|
||||
inc_conf_file_path = os.path.join(self.nodes[0].datadir, 'include.conf')
|
||||
with open(os.path.join(self.nodes[0].datadir, 'bitcoin.conf'), 'a', encoding='utf-8') as conf:
|
||||
|
@ -89,11 +89,12 @@ class ConfArgsTest(BitcoinTestFramework):
|
|||
)
|
||||
|
||||
def test_log_buffer(self):
|
||||
self.stop_node(0)
|
||||
with self.nodes[0].assert_debug_log(expected_msgs=['Warning: parsed potentially confusing double-negative -connect=0\n']):
|
||||
self.start_node(0, extra_args=['-noconnect=0'])
|
||||
self.stop_node(0)
|
||||
|
||||
def test_args_log(self):
|
||||
self.stop_node(0)
|
||||
self.log.info('Test config args logging')
|
||||
with self.nodes[0].assert_debug_log(
|
||||
expected_msgs=[
|
||||
|
@ -120,37 +121,41 @@ class ConfArgsTest(BitcoinTestFramework):
|
|||
'-rpcuser=secret-rpcuser',
|
||||
'-torpassword=secret-torpassword',
|
||||
])
|
||||
self.stop_node(0)
|
||||
|
||||
def test_networkactive(self):
|
||||
self.log.info('Test -networkactive option')
|
||||
self.stop_node(0)
|
||||
with self.nodes[0].assert_debug_log(expected_msgs=['SetNetworkActive: true\n']):
|
||||
self.start_node(0)
|
||||
self.stop_node(0)
|
||||
|
||||
self.stop_node(0)
|
||||
with self.nodes[0].assert_debug_log(expected_msgs=['SetNetworkActive: true\n']):
|
||||
self.start_node(0, extra_args=['-networkactive'])
|
||||
self.stop_node(0)
|
||||
|
||||
self.stop_node(0)
|
||||
with self.nodes[0].assert_debug_log(expected_msgs=['SetNetworkActive: true\n']):
|
||||
self.start_node(0, extra_args=['-networkactive=1'])
|
||||
self.stop_node(0)
|
||||
|
||||
self.stop_node(0)
|
||||
with self.nodes[0].assert_debug_log(expected_msgs=['SetNetworkActive: false\n']):
|
||||
self.start_node(0, extra_args=['-networkactive=0'])
|
||||
self.stop_node(0)
|
||||
|
||||
self.stop_node(0)
|
||||
with self.nodes[0].assert_debug_log(expected_msgs=['SetNetworkActive: false\n']):
|
||||
self.start_node(0, extra_args=['-nonetworkactive'])
|
||||
self.stop_node(0)
|
||||
|
||||
self.stop_node(0)
|
||||
with self.nodes[0].assert_debug_log(expected_msgs=['SetNetworkActive: false\n']):
|
||||
self.start_node(0, extra_args=['-nonetworkactive=1'])
|
||||
self.stop_node(0)
|
||||
|
||||
def test_seed_peers(self):
|
||||
self.log.info('Test seed peers')
|
||||
default_data_dir = self.nodes[0].datadir
|
||||
# Only regtest has no fixed seeds. To avoid connections to random
|
||||
# nodes, regtest is the only network where it is safe to enable
|
||||
# -fixedseeds in tests
|
||||
util.assert_equal(self.nodes[0].getblockchaininfo()['chain'],'regtest')
|
||||
self.stop_node(0)
|
||||
|
||||
# No peers.dat exists and -dnsseed=1
|
||||
# We expect the node will use DNS Seeds, but Regtest mode has 0 DNS seeds
|
||||
|
@ -159,10 +164,12 @@ class ConfArgsTest(BitcoinTestFramework):
|
|||
start = int(time.time())
|
||||
with self.nodes[0].assert_debug_log(expected_msgs=[
|
||||
"Loaded 0 addresses from peers.dat",
|
||||
"0 addresses found from DNS seeds"]):
|
||||
self.start_node(0, extra_args=['-dnsseed=1 -mocktime={}'.format(start)])
|
||||
"0 addresses found from DNS seeds",
|
||||
]):
|
||||
self.start_node(0, extra_args=['-dnsseed=1', '-fixedseeds=1', f'-mocktime={start}'])
|
||||
with self.nodes[0].assert_debug_log(expected_msgs=[
|
||||
"Adding fixed seeds as 60 seconds have passed and addrman is empty"]):
|
||||
"Adding fixed seeds as 60 seconds have passed and addrman is empty",
|
||||
]):
|
||||
self.nodes[0].setmocktime(start + 65)
|
||||
self.stop_node(0)
|
||||
|
||||
|
@ -173,8 +180,9 @@ class ConfArgsTest(BitcoinTestFramework):
|
|||
with self.nodes[0].assert_debug_log(expected_msgs=[
|
||||
"Loaded 0 addresses from peers.dat",
|
||||
"DNS seeding disabled",
|
||||
"Adding fixed seeds as -dnsseed=0, -addnode is not provided and all -seednode(s) attempted\n"]):
|
||||
self.start_node(0, extra_args=['-dnsseed=0'])
|
||||
"Adding fixed seeds as -dnsseed=0, -addnode is not provided and all -seednode(s) attempted\n",
|
||||
]):
|
||||
self.start_node(0, extra_args=['-dnsseed=0', '-fixedseeds=1'])
|
||||
assert time.time() - start < 60
|
||||
self.stop_node(0)
|
||||
|
||||
|
@ -185,7 +193,8 @@ class ConfArgsTest(BitcoinTestFramework):
|
|||
with self.nodes[0].assert_debug_log(expected_msgs=[
|
||||
"Loaded 0 addresses from peers.dat",
|
||||
"DNS seeding disabled",
|
||||
"Fixed seeds are disabled"]):
|
||||
"Fixed seeds are disabled",
|
||||
]):
|
||||
self.start_node(0, extra_args=['-dnsseed=0', '-fixedseeds=0'])
|
||||
assert time.time() - start < 60
|
||||
self.stop_node(0)
|
||||
|
@ -196,17 +205,15 @@ class ConfArgsTest(BitcoinTestFramework):
|
|||
start = int(time.time())
|
||||
with self.nodes[0].assert_debug_log(expected_msgs=[
|
||||
"Loaded 0 addresses from peers.dat",
|
||||
"DNS seeding disabled"]):
|
||||
self.start_node(0, extra_args=['-dnsseed=0', '-addnode=fakenodeaddr -mocktime={}'.format(start)])
|
||||
"DNS seeding disabled",
|
||||
]):
|
||||
self.start_node(0, extra_args=['-dnsseed=0', '-fixedseeds=1', '-addnode=fakenodeaddr', f'-mocktime={start}'])
|
||||
with self.nodes[0].assert_debug_log(expected_msgs=[
|
||||
"Adding fixed seeds as 60 seconds have passed and addrman is empty"]):
|
||||
"Adding fixed seeds as 60 seconds have passed and addrman is empty",
|
||||
]):
|
||||
self.nodes[0].setmocktime(start + 65)
|
||||
self.stop_node(0)
|
||||
|
||||
|
||||
def run_test(self):
|
||||
self.stop_node(0)
|
||||
|
||||
self.test_log_buffer()
|
||||
self.test_args_log()
|
||||
self.test_seed_peers()
|
||||
|
|
|
@ -368,6 +368,7 @@ def write_config(config_path, *, n, chain, extra_config=""):
|
|||
f.write("keypool=1\n")
|
||||
f.write("discover=0\n")
|
||||
f.write("dnsseed=0\n")
|
||||
f.write("fixedseeds=0\n")
|
||||
f.write("listenonion=0\n")
|
||||
f.write("printtoconsole=0\n")
|
||||
f.write("upnp=0\n")
|
||||
|
|
Loading…
Add table
Reference in a new issue