bittensor icon indicating copy to clipboard operation
bittensor copied to clipboard

Chain regression E2E Tests for btcli

Open gztensor opened this issue 1 year ago • 0 comments

Summary

The purpose of these e2e tests is full regression testing of chain features with btcli.

List of commands

subnets https://github.com/opentensor/bittensor/pull/1948

  • [ ] list - List all subnets on the network
  • [ ] metagraph - View a subnet metagraph information, with --netuid
  • [ ] lock_cost - Return the lock cost to register a subnet
  • [ ] create - Create a new bittensor subnetwork on this chain.
  • [ ] register - Register a wallet to a network, with --netuid
  • [ ] hyperparameters - View subnet hyperparameters, with --netuid

root

  • [x] list - List the root network
  • [x] weights - Set weights for root network, with netuid list and weigths list
  • [x] get_weights - Get weights for root network.
  • [x] boost - Boost weight for a specific subnet by increase amount, with --netuid and --increase
  • [ ] slash - Slash weight for a specific subnet by decrease amount, with --netuid and --decrease
  • [x] senate_vote - Vote on an active proposal by hash.
  • [x] senate - View senate and it's members
  • [x] register - Register a wallet to the root network.
  • [x] proposals - View active triumvirate proposals and their status
  • [x] delegate - Delegate Stake to an account, with --amount
    • [ ] --all (without --amount)
  • [x] undelegate Undelegate Stake from an account, with --amount
    • [ ] --all (without --amount)
  • [ ] my_delegates - Show all delegates where I am delegating a positive amount of stake
  • [ ] list_delegates - List all delegates on the network
  • [ ] list_delegates_lite - List all delegates on the network (lite version).
  • [x] nominate - Become a delegate on the network

wallet

  • [ ] list - List wallets
  • [ ] overview - Show registered account overview, with --all
  • [ ] transfer - Transfer Tao between accounts.
  • [ ] inspect - Inspect a wallet (cold, hot) pair
    • [ ] --all
    • [ ] --netuids
  • [ ] balance - Checks the balance of the wallet.
    • [ ] --all
  • [ ] set_identity - Create or update identity on-chain for a given cold wallet. Must be a subnet owner.
  • [ ] get_identity - Creates a new coldkey (for containing balance) under the specified path.

stake

  • [x] show - List all stake accounts for wallet.
  • [x] add - Add stake to your hotkey accounts from your coldkey.
  • [x] remove - Remove stake from the specified hotkey into the coldkey balance.

Corner cases

The parameters should be tested for positive and negative cases. For example, since netuid is a parameter of btcli subnet register, at least two tests should be created:

  • test_subnet_register_ok
  • test_subnet_register_wrong_netuid_fail

Here are the examples of parameters with types of errors:

  • netuid: subnet that doesn't exist
  • amount: over balance
  • hotkeys: address that is not a hotkey

gztensor avatar May 23 '24 23:05 gztensor