Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

QA: test all CLI operations #389

Closed
thibault-martinez opened this issue May 4, 2023 · 1 comment
Closed

QA: test all CLI operations #389

thibault-martinez opened this issue May 4, 2023 · 1 comment
Assignees
Labels
m-cli Module - CLI t-test Task - Test
Milestone

Comments

@thibault-martinez
Copy link
Member

thibault-martinez commented May 4, 2023

  • Test all CLI commands with all possible parameter combinations
  • Look for inconvenient patterns and possible UX improvements
  • Read the CLI wiki, make sure it's up to date, well explained and easy entry level
@github-project-automation github-project-automation bot moved this to Product Backlog in iota-sdk May 4, 2023
@thibault-martinez thibault-martinez added this to the v1.0.0 milestone May 4, 2023
@annie101101046 annie101101046 moved this to Product Backlog in Developer Experience May 8, 2023
@thibault-martinez thibault-martinez added m-cli Module - CLI t-test Task - Test labels May 15, 2023
@thibault-martinez thibault-martinez moved this from Product Backlog to Sprint Backlog in iota-sdk May 30, 2023
@qrayven qrayven moved this from Sprint Backlog to In Progress in iota-sdk Jun 2, 2023
@luca-moser luca-moser moved this from Product Backlog to External Backlog in Developer Experience Jun 12, 2023
@qrayven
Copy link
Contributor

qrayven commented Jun 14, 2023

  • Would be great to have the ability to read the node URL. We can only set one. Maybe subcommand node-url.
  • First run (without initialized wallet): Is it possible to list all accounts with their aliases attached to the wallet? It would be nice to have a command like list-accounts. cli: list-accounts command #658
  • First run (without initialized wallet): This error should make a suggestion that the wallet needs to be initialized first: ./wallet sync -> wallet error: missing parameter: client_options.
  • Shouldn't new command be replaced with new-account? new suggests that we want to create a new wallet, as the wallet is the main ‘actor’ for the CLI.
  • There is a flag log-level set to debug, but there are no debug messages at all. Maybe the wallet should be more talkative when this level is enabled.
  • *.stronghold files have invalid permissions; they should be 600.
  • *.mnemonic files have invalid permission; they should be 600.
  • Recommendation for root flag: use wallet-db-dir-path and stronghold-snaphshot-file-path instead of --wallet-db-path and --stronghold-snapshot-path.
  • When we want to migrate from non-existent path, there is a generic I/O error. It would be better to say that file is not found: wt migrate-stronghold-snapshot-v2-to-v3 sss.
  • ./wallet restore [invalid_path]: I get the prompt about password first, which is not logical. We should be asked for a password when the file is available.
  • When doing ./wallet backup, we have "Wallet has been backed up to "aaa/bbb"". When doing ./wallet restore, we have nothing, so the user doesn’t know if the status is a success or failed.
  • ./wallet change-password: it should be information that password has been successfully changed. We get nothing.
  • When doing ./wallet init with –-stronghold-snapshot-file, it should be information like "Creating a new vault, please provide a new password" because it's confusing which password I should provide when doing init for another mnemonic.
  • When doing the second time init with a different mnemonic and the same wallet-db-path, it passes. Should it? In theory, init creates also the db-path, but db-path cannot be shared between two mnemonics, right?
  • ./wallet migrate-stronghold-snapshot-v2-v3: Not sure if this is possible, but it would be nice to have more details. Is it about the wrong version (expected, given) of snapshot or totally invalid format? Done with Stronghold migration #456
  • Set-node subcommand is kind of generic? Maybe more precise set-node-url?
  • mint-nft can be executed without providing an address. This is ok, but the response should inform to which address the NFT has been minted. There is only a transaction ID, which is pretty annoying to look into.
  • transaction transaction_id: when the transaction details are printed, the address display should be in bech32 representation. cli: addresses formatted as Bech32 #677
  • outputs | unspent-outputs: it would be nice if the list of outputs similar to the list of transactions. Also, it would be great to have a type of output in such a list. cli: extended list of outputs #654
  • transactions: It would be great if we could refer to outputs and transactions per relative number, e.g., transaction 0, transaction 1, output 0. It would be super easy to navigate.
  • When parsing arguments for native-tokens, the spaces are not acceptable: Account "aaa": mint-native-token 10000 10000 -> error: unexpected argument '10000' found.
  • help: printed doesn’t contain information about short aliases (i.e., tx for transaction or txs for transactions, etc.).
  • addresses: It would be great if the list of outputs contains at least the type of output that is owned by the given address.
  • wallet mnemonic: for people who prefer some shell automation, it would be good to make the possible generation of mnemonic without interactive mode, i.e., ./wallet mnemonic –output-file-name file-name.txt or ./wallet mnemonic –output-stdout cli : generate mnemonic without interactive mode #652 .
  • Not sure, we should use stronghold in the descriptions for commands. Stronghold is a codename of technology that we use. I expect the user doesn't have to know that stronghold even exists. I would consider keeping this information in the documentation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
m-cli Module - CLI t-test Task - Test
Projects
Archived in project
Status: Done
Development

No branches or pull requests

2 participants