Problem
All 53 tests are unit-level Soroban snapshots with mock_all_auths(). They verify contract logic in isolation but never against a real Stellar testnet.
Expected Behavior
A test suite that deploys all 4 contracts to Soroban testnet, executes the full workflow (mint, KYC check, whitelist, transfer, dividend distribution), and verifies results via on-chain state.
Proposed Solution
Create a tests/e2e/ directory with a Rust integration test (or a separate ts-node script) that:
- Funds a test account via friendbot
- Builds and deploys all 4 contract WASMs
- Initializes and wires them together
- Runs the full compliance pipeline
- Tears down / archives state
Use soroban-cli or the Stellar RPC directly. Gate behind a #[cfg(feature = "e2e")] or a test_e2e cargo test with an env var flag so CI does not run them by default.
Problem
All 53 tests are unit-level Soroban snapshots with
mock_all_auths(). They verify contract logic in isolation but never against a real Stellar testnet.Expected Behavior
A test suite that deploys all 4 contracts to Soroban testnet, executes the full workflow (mint, KYC check, whitelist, transfer, dividend distribution), and verifies results via on-chain state.
Proposed Solution
Create a
tests/e2e/directory with a Rust integration test (or a separate ts-node script) that:Use
soroban-clior the Stellar RPC directly. Gate behind a#[cfg(feature = "e2e")]or atest_e2ecargo test with an env var flag so CI does not run them by default.