1 个不稳定版本
0.1.0-alpha.2 | 2024年1月27日 |
---|
#5 in #cometbft
730KB
16K SLoC
cometbft-testgen
cometbft-testgen
是一个小型实用工具,用于从最小输入生成 Tendermint 数据结构(仅用于测试目的)。
要求
- 最新稳定版本的 Rust
用法
# Show usage information for cometbft-testgen
cargo run -- --help
# Show usage about a particular command
cargo run -- --help CMD
例如,可以从标识符生成 Tendermint 验证器,或者仅从一组验证器生成 Tendermint 头部。
参数可以通过两种方式提供
- 通过 STDIN:在这种情况下,它们应是一个有效的 JSON 对象,每个参数都是该对象的字段
- 通过特定命令的命令行参数。
如果参数同时通过 STDIN 和 CLI 提供的,则后者优先。
如果可以从单个参数(如验证器)生成特定数据结构,则存在一个快捷方式,允许直接通过 STDIN 提供此参数,而无需将其包装在 JSON 对象中。例如,在验证器的情况下,以下命令都是等效的
cometbft-testgen validator --id a --voting-power 3
echo -n '{"id": "a", "voting_power": 3}' | cometbft-testgen --stdin validator
echo -n a | cometbft-testgen --stdin validator --voting-power 3
echo -n '{"id": "a"}' | cometbft-testgen --stdin validator --voting-power 3
echo -n '{"id": "a", "voting_power": 100}' | cometbft-testgen --stdin validator --voting-power 3
结果是
{
"address": "730D3D6B2E9F4F0F23879458F2D02E0004F0F241",
"pub_key": {
"type": "tendermint/PubKeyEd25519",
"value": "YnT69eNDaRaNU7teDTcyBedSD0B/Ziqx+sejm0wQba0="
},
"voting_power": "3",
"proposer_priority": null
}
许可证
版权所有 © 2020 非正式系统
根据 Apache 许可证版本 2.0(“许可证”)许可;除非适用法律要求或经书面同意,否则不得使用本存储库中的文件,除非符合许可证。您可以在以下位置获得许可证副本:
https://www.apache.org/licenses/LICENSE-2.0
除非适用法律要求或书面同意,否则根据许可证分发的软件按“原样”基础分发,不提供任何明示或暗示的保证或条件。有关许可证的具体语言、权限和限制,请参阅许可证。
依赖项
~8–18MB
~267K SLoC