Description
Add a Soroban test harness that exercises multi-contract flows (as applicable to current architecture) using a mock token, asserting balances and key events across calls.
Requirements and context
- Prefer a dedicated integration test module or crate if it keeps
lib.rs lean.
- Document how to run it in
README.md.
Suggested execution
- Fork the repo and create a branch:
git checkout -b test/integration-vault-settlement
- Implement changes in the Callora-Contracts Soroban workspace (
contracts/*/src/).
- Run
cargo fmt, cargo clippy --all-targets --all-features -- -D warnings, and cargo test from the workspace root.
- For WASM release builds:
cargo build --target wasm32-unknown-unknown --release -p callora-vault (adjust -p if the crate name differs).
Deliverables
- Tests under workspace + minimal doc updates.
- Security notes: what assumptions the mock makes vs mainnet USDC.
Test and commit
- Run tests and
./scripts/coverage.sh (or cargo tarpaulin per tarpaulin.toml).
- Cover edge cases; include summarized test output and brief security notes in the PR description.
Example commit message
test: cross-contract vault and settlement flow
Guidelines
- Minimum 95% line coverage for touched crates (workspace policy).
- Clear documentation (Rust
/// on public items where applicable; repo markdown as needed).
- Timeframe: 96 hours from assignment unless agreed otherwise.
Description
Add a Soroban test harness that exercises multi-contract flows (as applicable to current architecture) using a mock token, asserting balances and key events across calls.
Requirements and context
lib.rslean.README.md.Suggested execution
git checkout -b test/integration-vault-settlementcontracts/*/src/).cargo fmt,cargo clippy --all-targets --all-features -- -D warnings, andcargo testfrom the workspace root.cargo build --target wasm32-unknown-unknown --release -p callora-vault(adjust-pif the crate name differs).Deliverables
Test and commit
./scripts/coverage.sh(orcargo tarpaulinpertarpaulin.toml).Example commit message
Guidelines
///on public items where applicable; repo markdown as needed).