mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-07-12 20:02:35 +02:00
Merge #20715: util: Add ArgsManager::GetCommand() and use it in bitcoin-wallet
fa61b9d1a6
util: Add ArgsManager::GetCommand() and use it in bitcoin-wallet (MarcoFalke)7777105a24
refactor: Move all command dependend checks to ExecuteWalletToolFunc (MarcoFalke)fa06bce4ac
test: Add tests (MarcoFalke)fac05ccdad
wallet: [refactor] Pass ArgsManager to WalletAppInit (MarcoFalke) Pull request description: This not only moves the parsing responsibility out from the wallet tool, but it also makes it easier to implement bitcoin-util #19937 Fixes: #20902 ACKs for top commit: ajtowns: ACKfa61b9d1a6
fjahr: Code review ACKfa61b9d1a6
Tree-SHA512: 79622b806e8bf9dcd0dc24a8a6687345710df57720992e83a41cd8d6762a6dc112044ebc58fcf6e8fbf45de29a79b04873c5b8c2494a1eaaf902a2884703e47b
This commit is contained in:
@ -183,11 +183,13 @@ class ToolWalletTest(BitcoinTestFramework):
|
||||
|
||||
def test_invalid_tool_commands_and_args(self):
|
||||
self.log.info('Testing that various invalid commands raise with specific error messages')
|
||||
self.assert_raises_tool_error('Invalid command: foo', 'foo')
|
||||
self.assert_raises_tool_error("Error parsing command line arguments: Invalid command 'foo'", 'foo')
|
||||
# `bitcoin-wallet help` raises an error. Use `bitcoin-wallet -help`.
|
||||
self.assert_raises_tool_error('Invalid command: help', 'help')
|
||||
self.assert_raises_tool_error('Error: two methods provided (info and create). Only one method should be provided.', 'info', 'create')
|
||||
self.assert_raises_tool_error("Error parsing command line arguments: Invalid command 'help'", 'help')
|
||||
self.assert_raises_tool_error('Error: Additional arguments provided (create). Methods do not take arguments. Please refer to `-help`.', 'info', 'create')
|
||||
self.assert_raises_tool_error('Error parsing command line arguments: Invalid parameter -foo', '-foo')
|
||||
self.assert_raises_tool_error('No method provided. Run `bitcoin-wallet -help` for valid methods.')
|
||||
self.assert_raises_tool_error('Wallet name must be provided when creating a new wallet.', 'create')
|
||||
locked_dir = os.path.join(self.options.tmpdir, "node0", "regtest", "wallets")
|
||||
error = 'Error initializing wallet database environment "{}"!'.format(locked_dir)
|
||||
if self.options.descriptors:
|
||||
|
Reference in New Issue
Block a user