@ -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 ( )