mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-02-09 10:43:19 -05:00
scripted-diff: Use wallets_path and chain_path where possible
Instead of passing the datadir and chain name to os.path.join, just use the existing properties, which are the same. -BEGIN VERIFY SCRIPT- sed -i --regexp-extended 's|\.datadir, self\.chain, .wallets.|.wallets_path|g' $(git grep -l '\.datadir, self\.chain,') sed -i --regexp-extended 's|\.datadir, self\.chain,|.chain_path,|g' $(git grep -l '\.datadir, self\.chain,') -END VERIFY SCRIPT-
This commit is contained in:
parent
fa493fadfb
commit
fa41614a0a
18 changed files with 42 additions and 42 deletions
|
@ -53,7 +53,7 @@ class AddrmanTest(BitcoinTestFramework):
|
|||
self.num_nodes = 1
|
||||
|
||||
def run_test(self):
|
||||
peers_dat = os.path.join(self.nodes[0].datadir, self.chain, "peers.dat")
|
||||
peers_dat = os.path.join(self.nodes[0].chain_path, "peers.dat")
|
||||
init_error = lambda reason: (
|
||||
f"Error: Invalid or corrupt peers.dat \\({reason}\\). If you believe this "
|
||||
f"is a bug, please report it to {self.config['environment']['PACKAGE_BUGREPORT']}. "
|
||||
|
|
|
@ -18,7 +18,7 @@ class BlocksdirTest(BitcoinTestFramework):
|
|||
|
||||
def run_test(self):
|
||||
self.stop_node(0)
|
||||
assert os.path.isdir(os.path.join(self.nodes[0].datadir, self.chain, "blocks"))
|
||||
assert os.path.isdir(os.path.join(self.nodes[0].chain_path, "blocks"))
|
||||
assert not os.path.isdir(os.path.join(self.nodes[0].datadir, "blocks"))
|
||||
shutil.rmtree(self.nodes[0].datadir)
|
||||
initialize_datadir(self.options.tmpdir, 0, self.chain)
|
||||
|
@ -31,7 +31,7 @@ class BlocksdirTest(BitcoinTestFramework):
|
|||
self.log.info("mining blocks..")
|
||||
self.generatetoaddress(self.nodes[0], 10, self.nodes[0].get_deterministic_priv_key().address)
|
||||
assert os.path.isfile(os.path.join(blocksdir_path, self.chain, "blocks", "blk00000.dat"))
|
||||
assert os.path.isdir(os.path.join(self.nodes[0].datadir, self.chain, "blocks", "index"))
|
||||
assert os.path.isdir(os.path.join(self.nodes[0].chain_path, "blocks", "index"))
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
|
|
@ -421,7 +421,7 @@ class EstimateFeeTest(BitcoinTestFramework):
|
|||
|
||||
self.log.info("Restarting node with fresh estimation")
|
||||
self.stop_node(0)
|
||||
fee_dat = os.path.join(self.nodes[0].datadir, self.chain, "fee_estimates.dat")
|
||||
fee_dat = os.path.join(self.nodes[0].chain_path, "fee_estimates.dat")
|
||||
os.remove(fee_dat)
|
||||
self.start_node(0)
|
||||
self.connect_nodes(0, 1)
|
||||
|
|
|
@ -16,7 +16,7 @@ class LoggingTest(BitcoinTestFramework):
|
|||
self.setup_clean_chain = True
|
||||
|
||||
def relative_log_path(self, name):
|
||||
return os.path.join(self.nodes[0].datadir, self.chain, name)
|
||||
return os.path.join(self.nodes[0].chain_path, name)
|
||||
|
||||
def run_test(self):
|
||||
# test default log file name
|
||||
|
|
|
@ -91,7 +91,7 @@ class PruneTest(BitcoinTestFramework):
|
|||
def setup_network(self):
|
||||
self.setup_nodes()
|
||||
|
||||
self.prunedir = os.path.join(self.nodes[2].datadir, self.chain, 'blocks', '')
|
||||
self.prunedir = os.path.join(self.nodes[2].chain_path, 'blocks', '')
|
||||
|
||||
self.connect_nodes(0, 1)
|
||||
self.connect_nodes(1, 2)
|
||||
|
@ -290,7 +290,7 @@ class PruneTest(BitcoinTestFramework):
|
|||
assert_equal(ret + 1, node.getblockchaininfo()['pruneheight'])
|
||||
|
||||
def has_block(index):
|
||||
return os.path.isfile(os.path.join(self.nodes[node_number].datadir, self.chain, "blocks", f"blk{index:05}.dat"))
|
||||
return os.path.isfile(os.path.join(self.nodes[node_number].chain_path, "blocks", f"blk{index:05}.dat"))
|
||||
|
||||
# should not prune because chain tip of node 3 (995) < PruneAfterHeight (1000)
|
||||
assert_raises_rpc_error(-1, "Blockchain is too short for pruning", node.pruneblockchain, height(500))
|
||||
|
|
|
@ -21,7 +21,7 @@ class SettingsTest(BitcoinTestFramework):
|
|||
|
||||
def run_test(self):
|
||||
node, = self.nodes
|
||||
settings = Path(node.datadir, self.chain, "settings.json")
|
||||
settings = Path(node.chain_path, "settings.json")
|
||||
conf = Path(node.datadir, "bitcoin.conf")
|
||||
|
||||
# Assert empty settings file was created
|
||||
|
|
|
@ -46,7 +46,7 @@ class RPCInterfaceTest(BitcoinTestFramework):
|
|||
command = info['active_commands'][0]
|
||||
assert_equal(command['method'], 'getrpcinfo')
|
||||
assert_greater_than_or_equal(command['duration'], 0)
|
||||
assert_equal(info['logpath'], os.path.join(self.nodes[0].datadir, self.chain, 'debug.log'))
|
||||
assert_equal(info['logpath'], os.path.join(self.nodes[0].chain_path, 'debug.log'))
|
||||
|
||||
def test_batch_request(self):
|
||||
self.log.info("Testing basic JSON-RPC batch request...")
|
||||
|
|
|
@ -55,8 +55,8 @@ class MempoolCompatibilityTest(BitcoinTestFramework):
|
|||
self.stop_node(1)
|
||||
|
||||
self.log.info("Move mempool.dat from old to new node")
|
||||
old_node_mempool = os.path.join(old_node.datadir, self.chain, 'mempool.dat')
|
||||
new_node_mempool = os.path.join(new_node.datadir, self.chain, 'mempool.dat')
|
||||
old_node_mempool = os.path.join(old_node.chain_path, 'mempool.dat')
|
||||
new_node_mempool = os.path.join(new_node.chain_path, 'mempool.dat')
|
||||
os.rename(old_node_mempool, new_node_mempool)
|
||||
|
||||
self.log.info("Start new node and verify mempool contains the tx")
|
||||
|
|
|
@ -143,8 +143,8 @@ class MempoolPersistTest(BitcoinTestFramework):
|
|||
self.nodes[2].syncwithvalidationinterfacequeue() # Flush mempool to wallet
|
||||
assert_equal(node2_balance, wallet_watch.getbalance())
|
||||
|
||||
mempooldat0 = os.path.join(self.nodes[0].datadir, self.chain, 'mempool.dat')
|
||||
mempooldat1 = os.path.join(self.nodes[1].datadir, self.chain, 'mempool.dat')
|
||||
mempooldat0 = os.path.join(self.nodes[0].chain_path, 'mempool.dat')
|
||||
mempooldat1 = os.path.join(self.nodes[1].chain_path, 'mempool.dat')
|
||||
|
||||
self.log.debug("Force -persistmempool=0 node1 to savemempool to disk via RPC")
|
||||
assert not os.path.exists(mempooldat1)
|
||||
|
|
|
@ -401,7 +401,7 @@ class ToolWalletTest(BitcoinTestFramework):
|
|||
|
||||
|
||||
def run_test(self):
|
||||
self.wallet_path = os.path.join(self.nodes[0].datadir, self.chain, 'wallets', self.default_wallet_name, self.wallet_data_filename)
|
||||
self.wallet_path = os.path.join(self.nodes[0].wallets_path, self.default_wallet_name, self.wallet_data_filename)
|
||||
self.test_invalid_tool_commands_and_args()
|
||||
# Warning: The following tests are order-dependent.
|
||||
self.test_tool_wallet_info()
|
||||
|
|
|
@ -109,16 +109,16 @@ class WalletBackupTest(BitcoinTestFramework):
|
|||
self.stop_node(2)
|
||||
|
||||
def erase_three(self):
|
||||
os.remove(os.path.join(self.nodes[0].datadir, self.chain, 'wallets', self.default_wallet_name, self.wallet_data_filename))
|
||||
os.remove(os.path.join(self.nodes[1].datadir, self.chain, 'wallets', self.default_wallet_name, self.wallet_data_filename))
|
||||
os.remove(os.path.join(self.nodes[2].datadir, self.chain, 'wallets', self.default_wallet_name, self.wallet_data_filename))
|
||||
os.remove(os.path.join(self.nodes[0].wallets_path, self.default_wallet_name, self.wallet_data_filename))
|
||||
os.remove(os.path.join(self.nodes[1].wallets_path, self.default_wallet_name, self.wallet_data_filename))
|
||||
os.remove(os.path.join(self.nodes[2].wallets_path, self.default_wallet_name, self.wallet_data_filename))
|
||||
|
||||
def restore_invalid_wallet(self):
|
||||
node = self.nodes[3]
|
||||
invalid_wallet_file = os.path.join(self.nodes[0].datadir, 'invalid_wallet_file.bak')
|
||||
open(invalid_wallet_file, 'a', encoding="utf8").write('invald wallet')
|
||||
wallet_name = "res0"
|
||||
not_created_wallet_file = os.path.join(node.datadir, self.chain, 'wallets', wallet_name)
|
||||
not_created_wallet_file = os.path.join(node.wallets_path, wallet_name)
|
||||
error_message = "Wallet file verification failed. Failed to load database path '{}'. Data is not in recognized format.".format(not_created_wallet_file)
|
||||
assert_raises_rpc_error(-18, error_message, node.restorewallet, wallet_name, invalid_wallet_file)
|
||||
assert not os.path.exists(not_created_wallet_file)
|
||||
|
@ -128,14 +128,14 @@ class WalletBackupTest(BitcoinTestFramework):
|
|||
nonexistent_wallet_file = os.path.join(self.nodes[0].datadir, 'nonexistent_wallet.bak')
|
||||
wallet_name = "res0"
|
||||
assert_raises_rpc_error(-8, "Backup file does not exist", node.restorewallet, wallet_name, nonexistent_wallet_file)
|
||||
not_created_wallet_file = os.path.join(node.datadir, self.chain, 'wallets', wallet_name)
|
||||
not_created_wallet_file = os.path.join(node.wallets_path, wallet_name)
|
||||
assert not os.path.exists(not_created_wallet_file)
|
||||
|
||||
def restore_wallet_existent_name(self):
|
||||
node = self.nodes[3]
|
||||
backup_file = os.path.join(self.nodes[0].datadir, 'wallet.bak')
|
||||
wallet_name = "res0"
|
||||
wallet_file = os.path.join(node.datadir, self.chain, 'wallets', wallet_name)
|
||||
wallet_file = os.path.join(node.wallets_path, wallet_name)
|
||||
error_message = "Failed to create database path '{}'. Database already exists.".format(wallet_file)
|
||||
assert_raises_rpc_error(-36, error_message, node.restorewallet, wallet_name, backup_file)
|
||||
assert os.path.exists(wallet_file)
|
||||
|
@ -206,9 +206,9 @@ class WalletBackupTest(BitcoinTestFramework):
|
|||
self.nodes[3].restorewallet("res1", backup_file_1)
|
||||
self.nodes[3].restorewallet("res2", backup_file_2)
|
||||
|
||||
assert os.path.exists(os.path.join(self.nodes[3].datadir, self.chain, 'wallets', "res0"))
|
||||
assert os.path.exists(os.path.join(self.nodes[3].datadir, self.chain, 'wallets', "res1"))
|
||||
assert os.path.exists(os.path.join(self.nodes[3].datadir, self.chain, 'wallets', "res2"))
|
||||
assert os.path.exists(os.path.join(self.nodes[3].wallets_path, "res0"))
|
||||
assert os.path.exists(os.path.join(self.nodes[3].wallets_path, "res1"))
|
||||
assert os.path.exists(os.path.join(self.nodes[3].wallets_path, "res2"))
|
||||
|
||||
res0_rpc = self.nodes[3].get_wallet_rpc("res0")
|
||||
res1_rpc = self.nodes[3].get_wallet_rpc("res1")
|
||||
|
@ -226,8 +226,8 @@ class WalletBackupTest(BitcoinTestFramework):
|
|||
self.erase_three()
|
||||
|
||||
#start node2 with no chain
|
||||
shutil.rmtree(os.path.join(self.nodes[2].datadir, self.chain, 'blocks'))
|
||||
shutil.rmtree(os.path.join(self.nodes[2].datadir, self.chain, 'chainstate'))
|
||||
shutil.rmtree(os.path.join(self.nodes[2].chain_path, 'blocks'))
|
||||
shutil.rmtree(os.path.join(self.nodes[2].chain_path, 'chainstate'))
|
||||
|
||||
self.start_three(["-nowallet"])
|
||||
self.init_three()
|
||||
|
@ -248,10 +248,10 @@ class WalletBackupTest(BitcoinTestFramework):
|
|||
|
||||
# Backup to source wallet file must fail
|
||||
sourcePaths = [
|
||||
os.path.join(self.nodes[0].datadir, self.chain, 'wallets', self.default_wallet_name, self.wallet_data_filename),
|
||||
os.path.join(self.nodes[0].datadir, self.chain, 'wallets', '.', self.default_wallet_name, self.wallet_data_filename),
|
||||
os.path.join(self.nodes[0].datadir, self.chain, 'wallets', self.default_wallet_name),
|
||||
os.path.join(self.nodes[0].datadir, self.chain, 'wallets')]
|
||||
os.path.join(self.nodes[0].wallets_path, self.default_wallet_name, self.wallet_data_filename),
|
||||
os.path.join(self.nodes[0].wallets_path, '.', self.default_wallet_name, self.wallet_data_filename),
|
||||
os.path.join(self.nodes[0].wallets_path, self.default_wallet_name),
|
||||
os.path.join(self.nodes[0].wallets_path)]
|
||||
|
||||
for sourcePath in sourcePaths:
|
||||
assert_raises_rpc_error(-4, "backup failed", self.nodes[0].backupwallet, sourcePath)
|
||||
|
|
|
@ -234,7 +234,7 @@ class WalletDescriptorTest(BitcoinTestFramework):
|
|||
self.log.info("Test that loading descriptor wallet containing legacy key types throws error")
|
||||
self.nodes[0].createwallet(wallet_name="crashme", descriptors=True)
|
||||
self.nodes[0].unloadwallet("crashme")
|
||||
wallet_db = os.path.join(self.nodes[0].datadir, self.chain, "wallets", "crashme", self.wallet_data_filename)
|
||||
wallet_db = os.path.join(self.nodes[0].wallets_path, "crashme", self.wallet_data_filename)
|
||||
with sqlite3.connect(wallet_db) as conn:
|
||||
# add "cscript" entry: key type is uint160 (20 bytes), value type is CScript (zero-length here)
|
||||
conn.execute('INSERT INTO main VALUES(?, ?)', (b'\x07cscript' + b'\x00'*20, b'\x00'))
|
||||
|
|
|
@ -87,11 +87,11 @@ class WalletHDTest(BitcoinTestFramework):
|
|||
self.stop_node(1)
|
||||
# we need to delete the complete chain directory
|
||||
# otherwise node1 would auto-recover all funds in flag the keypool keys as used
|
||||
shutil.rmtree(os.path.join(self.nodes[1].datadir, self.chain, "blocks"))
|
||||
shutil.rmtree(os.path.join(self.nodes[1].datadir, self.chain, "chainstate"))
|
||||
shutil.rmtree(os.path.join(self.nodes[1].chain_path, "blocks"))
|
||||
shutil.rmtree(os.path.join(self.nodes[1].chain_path, "chainstate"))
|
||||
shutil.copyfile(
|
||||
os.path.join(self.nodes[1].datadir, "hd.bak"),
|
||||
os.path.join(self.nodes[1].datadir, self.chain, 'wallets', self.default_wallet_name, self.wallet_data_filename),
|
||||
os.path.join(self.nodes[1].wallets_path, self.default_wallet_name, self.wallet_data_filename),
|
||||
)
|
||||
self.start_node(1)
|
||||
|
||||
|
@ -115,11 +115,11 @@ class WalletHDTest(BitcoinTestFramework):
|
|||
|
||||
# Try a RPC based rescan
|
||||
self.stop_node(1)
|
||||
shutil.rmtree(os.path.join(self.nodes[1].datadir, self.chain, "blocks"))
|
||||
shutil.rmtree(os.path.join(self.nodes[1].datadir, self.chain, "chainstate"))
|
||||
shutil.rmtree(os.path.join(self.nodes[1].chain_path, "blocks"))
|
||||
shutil.rmtree(os.path.join(self.nodes[1].chain_path, "chainstate"))
|
||||
shutil.copyfile(
|
||||
os.path.join(self.nodes[1].datadir, "hd.bak"),
|
||||
os.path.join(self.nodes[1].datadir, self.chain, "wallets", self.default_wallet_name, self.wallet_data_filename),
|
||||
os.path.join(self.nodes[1].wallets_path, self.default_wallet_name, self.wallet_data_filename),
|
||||
)
|
||||
self.start_node(1, extra_args=self.extra_args[1])
|
||||
self.connect_nodes(0, 1)
|
||||
|
|
|
@ -33,7 +33,7 @@ class KeypoolRestoreTest(BitcoinTestFramework):
|
|||
self.skip_if_no_wallet()
|
||||
|
||||
def run_test(self):
|
||||
wallet_path = os.path.join(self.nodes[1].datadir, self.chain, "wallets", self.default_wallet_name, self.wallet_data_filename)
|
||||
wallet_path = os.path.join(self.nodes[1].wallets_path, self.default_wallet_name, self.wallet_data_filename)
|
||||
wallet_backup_path = os.path.join(self.nodes[1].datadir, "wallet.bak")
|
||||
self.generate(self.nodes[0], COINBASE_MATURITY + 1)
|
||||
|
||||
|
|
|
@ -234,8 +234,8 @@ class ListTransactionsTest(BitcoinTestFramework):
|
|||
# refill keypool otherwise the second node wouldn't recognize addresses generated on the first nodes
|
||||
self.nodes[0].keypoolrefill(1000)
|
||||
self.stop_nodes()
|
||||
wallet0 = os.path.join(self.nodes[0].datadir, self.chain, self.default_wallet_name, "wallet.dat")
|
||||
wallet2 = os.path.join(self.nodes[2].datadir, self.chain, self.default_wallet_name, "wallet.dat")
|
||||
wallet0 = os.path.join(self.nodes[0].chain_path, self.default_wallet_name, "wallet.dat")
|
||||
wallet2 = os.path.join(self.nodes[2].chain_path, self.default_wallet_name, "wallet.dat")
|
||||
shutil.copyfile(wallet0, wallet2)
|
||||
self.start_nodes()
|
||||
# reconnect nodes
|
||||
|
|
|
@ -62,7 +62,7 @@ class MultiWalletTest(BitcoinTestFramework):
|
|||
def run_test(self):
|
||||
node = self.nodes[0]
|
||||
|
||||
data_dir = lambda *p: os.path.join(node.datadir, self.chain, *p)
|
||||
data_dir = lambda *p: os.path.join(node.chain_path, *p)
|
||||
wallet_dir = lambda *p: data_dir('wallets', *p)
|
||||
wallet = lambda name: node.get_wallet_rpc(name)
|
||||
|
||||
|
|
|
@ -106,7 +106,7 @@ class WalletPruningTest(BitcoinTestFramework):
|
|||
|
||||
def has_block(self, block_index):
|
||||
"""Checks if the pruned node has the specific blk0000*.dat file"""
|
||||
return os.path.isfile(os.path.join(self.nodes[1].datadir, self.chain, "blocks", f"blk{block_index:05}.dat"))
|
||||
return os.path.isfile(os.path.join(self.nodes[1].chain_path, "blocks", f"blk{block_index:05}.dat"))
|
||||
|
||||
def create_wallet(self, wallet_name, *, unload=False):
|
||||
"""Creates and dumps a wallet on the non-pruned node0 to be later import by the pruned node"""
|
||||
|
|
|
@ -89,7 +89,7 @@ class ReorgsRestoreTest(BitcoinTestFramework):
|
|||
# Node0 wallet file is loaded on longest sync'ed node1
|
||||
self.stop_node(1)
|
||||
self.nodes[0].backupwallet(os.path.join(self.nodes[0].datadir, 'wallet.bak'))
|
||||
shutil.copyfile(os.path.join(self.nodes[0].datadir, 'wallet.bak'), os.path.join(self.nodes[1].datadir, self.chain, self.default_wallet_name, self.wallet_data_filename))
|
||||
shutil.copyfile(os.path.join(self.nodes[0].datadir, 'wallet.bak'), os.path.join(self.nodes[1].chain_path, self.default_wallet_name, self.wallet_data_filename))
|
||||
self.start_node(1)
|
||||
tx_after_reorg = self.nodes[1].gettransaction(txid)
|
||||
# Check that normal confirmed tx is confirmed again but with different blockhash
|
||||
|
|
Loading…
Add table
Reference in a new issue