Changeset View
Changeset View
Standalone View
Standalone View
test/functional/feature_filelock.py
Show All 10 Lines | |||||
class FilelockTest(BitcoinTestFramework): | class FilelockTest(BitcoinTestFramework): | ||||
def set_test_params(self): | def set_test_params(self): | ||||
self.setup_clean_chain = True | self.setup_clean_chain = True | ||||
self.num_nodes = 2 | self.num_nodes = 2 | ||||
def setup_network(self): | def setup_network(self): | ||||
self.add_nodes(self.num_nodes, extra_args=None) | self.add_nodes(self.num_nodes, extra_args=None) | ||||
self.nodes[0].start([]) | self.nodes[0].start(['-wallet=']) | ||||
self.nodes[0].wait_for_rpc_connection() | self.nodes[0].wait_for_rpc_connection() | ||||
def run_test(self): | def run_test(self): | ||||
datadir = os.path.join(self.nodes[0].datadir, self.chain) | datadir = os.path.join(self.nodes[0].datadir, self.chain) | ||||
self.log.info("Using datadir {}".format(datadir)) | self.log.info("Using datadir {}".format(datadir)) | ||||
self.log.info( | self.log.info( | ||||
"Check that we can't start a second bitcoind instance using the same datadir") | "Check that we can't start a second bitcoind instance using the same datadir") | ||||
expected_msg = "Error: Cannot obtain a lock on data directory {0}. {1} is probably already running.".format( | expected_msg = "Error: Cannot obtain a lock on data directory {0}. {1} is probably already running.".format( | ||||
datadir, self.config['environment']['PACKAGE_NAME']) | datadir, self.config['environment']['PACKAGE_NAME']) | ||||
self.nodes[1].assert_start_raises_init_error(extra_args=[ | self.nodes[1].assert_start_raises_init_error(extra_args=[ | ||||
'-datadir={}'.format(self.nodes[0].datadir), '-noserver'], expected_msg=expected_msg) | '-datadir={}'.format(self.nodes[0].datadir), '-noserver'], expected_msg=expected_msg) | ||||
if self.is_wallet_compiled(): | if self.is_wallet_compiled(): | ||||
wallet_dir = os.path.join(datadir, 'wallets') | wallet_dir = os.path.join(datadir, 'wallets') | ||||
self.log.info( | self.log.info( | ||||
"Check that we can't start a second bitcoind instance using the same wallet") | "Check that we can't start a second bitcoind instance using the same wallet") | ||||
expected_msg = "Error: Error initializing wallet database environment" | expected_msg = "Error: Error initializing wallet database environment" | ||||
self.nodes[1].assert_start_raises_init_error( | self.nodes[1].assert_start_raises_init_error( | ||||
extra_args=[ | extra_args=[ | ||||
'-walletdir={}'.format(wallet_dir), | '-walletdir={}'.format(wallet_dir), | ||||
'-wallet=', | |||||
'-noserver'], | '-noserver'], | ||||
expected_msg=expected_msg, | expected_msg=expected_msg, | ||||
match=ErrorMatch.PARTIAL_REGEX) | match=ErrorMatch.PARTIAL_REGEX) | ||||
if __name__ == '__main__': | if __name__ == '__main__': | ||||
FilelockTest().main() | FilelockTest().main() |