@@ -33,20 +33,28 @@ def run_test(self):
33
33
self .log .info ("Creating wallets" )
34
34
35
35
node0_wallet = os .path .join (self .nodes [0 ].datadir , 'node0_wallet' )
36
+ node0_wallet_backup = os .path .join (self .nodes [0 ].datadir , 'node0_wallet.bak' )
36
37
self .nodes [0 ].createwallet (node0_wallet )
38
+ self .nodes [0 ].backupwallet (node0_wallet_backup )
37
39
self .nodes [0 ].unloadwallet (node0_wallet )
38
40
node1_wallet = os .path .join (self .nodes [1 ].datadir , 'node1_wallet' )
41
+ node1_wallet_backup = os .path .join (self .nodes [0 ].datadir , 'node1_wallet.bak' )
39
42
self .nodes [1 ].createwallet (node1_wallet )
43
+ self .nodes [1 ].backupwallet (node1_wallet_backup )
40
44
self .nodes [1 ].unloadwallet (node1_wallet )
41
45
42
- self .log .info ("Loading wallets into nodes with a different genesis blocks " )
46
+ self .log .info ("Loading/restoring wallets into nodes with a different genesis block " )
43
47
44
48
if self .options .descriptors :
45
49
assert_raises_rpc_error (- 18 , 'Wallet file verification failed.' , self .nodes [0 ].loadwallet , node1_wallet )
46
50
assert_raises_rpc_error (- 18 , 'Wallet file verification failed.' , self .nodes [1 ].loadwallet , node0_wallet )
51
+ assert_raises_rpc_error (- 18 , 'Wallet file verification failed.' , self .nodes [0 ].restorewallet , 'w' , node1_wallet_backup )
52
+ assert_raises_rpc_error (- 18 , 'Wallet file verification failed.' , self .nodes [1 ].restorewallet , 'w' , node0_wallet_backup )
47
53
else :
48
54
assert_raises_rpc_error (- 4 , 'Wallet files should not be reused across chains.' , self .nodes [0 ].loadwallet , node1_wallet )
49
55
assert_raises_rpc_error (- 4 , 'Wallet files should not be reused across chains.' , self .nodes [1 ].loadwallet , node0_wallet )
56
+ assert_raises_rpc_error (- 4 , 'Wallet files should not be reused across chains.' , self .nodes [0 ].restorewallet , 'w' , node1_wallet_backup )
57
+ assert_raises_rpc_error (- 4 , 'Wallet files should not be reused across chains.' , self .nodes [1 ].restorewallet , 'w' , node0_wallet_backup )
50
58
51
59
if not self .options .descriptors :
52
60
self .log .info ("Override cross-chain wallet load protection" )
0 commit comments