This repo contains the Wasm smart contract for Babylon integrations. It will be deployed on a Cosmos zone that integrates Babylon, and will maintain BTC timestamps of headers in this Cosmos zone.
Make sure you have cargo-run-script installed and docker running.
cargo install cargo-run-scriptcargo cleancargo buildCheck whether the code is formatted correctly.
cargo fmt --all -- --check
cargo check
cargo clippy --all-targets -- -D warningsAlternatively, you can run the following command to run all the checks at once.
cargo run-script lintNote: Requires the optimized contract to be built (cargo optimize)
Runs all the CI checks locally (in your actual toolchain).
cargo test --libNote: Requires the optimized contract to be built (cargo optimize)
cargo test --test integrationAlternatively, you can run the following command, that makes sure to build the optimized contract before running the integration tests.
cargo run-script integrationcargo run-script gen-schemacargo run-script gen-protocargo run-script gen-datacargo run-script optimize