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