用途:为智能合约集成测试编写 bulloak 树规范(.tree 文件)。Bulloak 是 Solidity 测试生成器,可用 .tree 规范文件生成测试脚手架,结构化设计测试用例以覆盖各种场景与边界情况。
主要能力:提供 BTT 语法与示例、Sablier 专用术语参考;支持从树文件生成测试合约、校验 .t.sol 与 .tree 是否一致。
使用方式:未安装时执行 cargo install bulloak。生成测试合约:bulloak scaffold -wf --skip-modifiers --format-descriptions <path/to/file.tree>;校验一致性:bulloak check --skip-modifiers <path/to/file.tree>;也可批量检查目录:bulloak check --skip-modifiers tests/**/*.tree。--format-descriptions 会首字母大写并加句号;--skip-modifiers 跳过 modifier 生成(modifier 放在独立 Modifiers.sol)。
树语法与规则:根节点为函数名加 _Integration_Concrete_Test;单文件多树时根为 Contract::function,且共享同一合约名。分支用 ├ 和 └ 表示;以 when 或 given 开头为条件(两者可互换),以 it 开头为动作,it 的子分支为动作描述。树文件分支末尾不得有句号。测试文件须放在 tests/integration/concrete/{function},目录名用连字符格式,树文件名 {function}.tree,测试文件名 {function}.t.sol。
适用场景:智能合约集成测试设计,尤其 Sablier 仓库。
限制:需已安装 Bulloak(Rust cargo);具体仓库目录结构由仓库 agent 提供;详细文档见 https://github.com/alexfertel/bulloak/blob/main/README.md。