BVS Library
A standalone library for the BVS project that provides shared functionality for BVS Contracts.
bvs_library::*
Used in other CosmWasm contracts to share common functionality.
bvs_library::ownership: Similar toOwnable.solto assert that the caller is the owner of the contract.bvs_library::addr: Additional utilities for working with addresses.
bvs_library::testing
Test utilities for BVS contracts for unit and integration tests.
Only compile in non wasm32 targets #![cfg(not(target_arch = "wasm32"))], purely for testing.
Won't be included in the *.wasm artifact.
TestingContract is a trait that provides a common testing interface for setting up testing contracts.
It provides utils for common functions or traits for easy testing—allowing for testing code to be colocated at
the cosmwasm crates, as they should—for integration testing productivity sake.
crates/
├── bvs-library/ <-- You are here
├── bvs-pauser/
│ └── src/
│ └── testing.rs <-- put here with `#![cfg(not(target_arch = "wasm32"))]`
├── bvs-vault-router/
│ └── src/
│ └── testing.rs <-- put here with `#![cfg(not(target_arch = "wasm32"))]`
For integration tests, downstream crates can implement TestingContract for execute/query/init/defaults functionality.