Testing
Multyr contracts are deployed on Arbitrum One. The system is currently in validation phase. Deposits are not open to the public. Behavior described on this page reflects the protocol's designed behavior; some mechanisms are active in shadow testing, others become active at public launch. See the Status page for details.
Multyr has undergone extensive testing across multiple dimensions, including correctness, resilience, and adversarial behavior.
Overview
The testing framework includes:
- unit testing
- integration testing
- fuzz testing
- invariant testing
- fork-based validation
- adversarial simulations
- stress and chaos testing
Testing is designed to validate both normal operation and extreme edge cases.
Test Scale
- 289 test files
- 3,500+ test functions
- 50+ stateful invariants
- 14 fork validation domains
- multi-phase chaos simulation (24h equivalent)
Invariant Testing
Stateful invariant testing verifies that core system properties always hold, regardless of execution order.
Examples include:
- solvency conditions
- share-to-asset consistency
- fee bounds enforcement
- queue integrity
- value conservation
These invariants are tested across thousands of randomized execution sequences.
Fuzz Testing
Fuzz testing is applied across critical paths:
- deposits and withdrawals
- fee calculations
- strategy allocation
- adapter interactions
Randomized inputs are used to verify:
- correctness
- rounding behavior
- boundary conditions
Adversarial Testing
The system is tested against hostile scenarios, including:
- reentrancy attacks
- cross-function interactions
- denial-of-service patterns
- gas griefing attempts
These tests validate that the system remains stable under malicious behavior.
Chaos & Stress Testing
The protocol is tested under simulated stress conditions:
- multi-phase failure scenarios
- oracle degradation
- adapter failures
- liquidity constraints
Recovery behavior is explicitly validated.
Fork Validation
Testing is performed against live protocol environments via fork testing.
This validates:
- real integration behavior
- external protocol interactions
- system consistency under real-world conditions
Summary
Testing in Multyr is designed to:
- validate correctness
- enforce critical invariants
- simulate adversarial conditions
- ensure recovery under stress
Testing significantly reduces risk but does not eliminate it.
For a detailed breakdown of testing coverage and invariant suites, see: → Testing Deep Dive