0.9.1 |
|
---|---|
0.8.1 |
|
0.7.0 |
|
#19 in #casper-labs
每月 31 次下载
380KB
583 行代码
cargocasperlabs
一个用于在 CasperLabs 网络上创建 Wasm 智能合约及其测试的命令行工具。
安装
cargo casperlabs
是一个 Cargo 子命令,可以通过 cargo install
安装
cargo install cargo-casperlabs
从最新的 dev
分支安装
git clone https://github.com/CasperLabs/CasperLabs
cd CasperLabs/execution-engine/cargo-casperlabs
cargo install cargo-casperlabs --path=.
用法
创建一个名为 "my_project" 的文件夹,包含一个示例合约和一个用于合约的单独测试包
cargo casperlabs my_project
这将创建以下文件
my_project/
├── contract
│ ├── .cargo
│ │ └── config
│ ├── Cargo.toml
│ ├── rust-toolchain
│ └── src
│ └── main.rs
├── tests
│ ├── build.rs
│ ├── Cargo.toml
│ ├── rust-toolchain
│ ├── src
│ │ └── integration_tests.rs
│ └── wasm
│ ├── mint_install.wasm
│ ├── pos_install.wasm
│ ├── standard_payment_install.wasm
│ └── standard_payment.wasm
└── .travis.yml
构建合约
要构建合约,必须安装正确的 Rust 版本以及 Wasm 目标
cd my_project/contract
rustup install $(cat rust-toolchain)
rustup target add --toolchain=$(cat rust-toolchain) wasm32-unknown-unknown
现在可以使用以下命令构建合约
cargo build --release
并将在 my_project/contract/target/wasm32-unknown-unknown/release/contract.wasm
中构建。
测试合约
运行测试将自动以发布模式构建合约,将其复制到 "tests/wasm" 文件夹,然后构建并运行测试
cd my_project/tests
cargo test
许可
在 CasperLabs 开源许可 (COSL) 下许可。
依赖关系
~3MB
~41K SLoC