PUT Test Validator
PUT Test Validator
During early stage development, it is often convenient to target a cluster with fewer restrictions and more configuration options than the public offerings provide. This is easily achieved with the put-test-validator binary, which starts a full-featured, single-node cluster on the developer's workstation.
Advantages
Installation
The put-test-validator binary ships with the PUT CLI Tool Suite. Install before continuing.
Running
First take a look at the configuration options
Next start the test validator
By default, basic status information is printed while the process is running. See Appendix I for details
Leave put-test-validator running in its own terminal. When it is no longer needed, it can be stopped with ctrl-c.
Interacting
Open a new terminal to interact with a running put-test-validator instance using other binaries from the PUT CLI Tool Suite or your own client software.
Configure the CLI Tool Suite to target a local cluster by default#
Verify the CLI Tool Suite configuration#
Check the wallet balance#
Perform a basic transfer transaction#
Monitor msg!() output from on-chain programs#
Appendix I: Status Output
File path of the ledger storage directory. This directory can get large. Store less transaction history with --limit-ledger-size ... or relocate it with --ledger ...
File path of the validator text log file. The log can also be streamed by passing --log. Status output is suppressed in this case.
The validator's identity in the gossip network
The software version
The network address of the Gossip, Transaction Processing Unit and JSON RPC service, respectively
Session running time, current slot of the the three block commitment levels, slot height of the last snapshot, transaction count, voting authority balance
Appendix II: Runtime Features
By default, the test validator runs with all runtime features activated.
You can verify this using the PUT command-line tools:
Since this may not always be desired, especially when testing programs meant for deployment to mainnet, the CLI provides an option to deactivate specific features:
Last updated