Tests
yarn foundry:test # unit, fuzz, edge and invariant suites (mocked Hedera system contracts), 3-4 min
yarn foundry:test:fork # the guard against the real testnet pools and feeds
yarn next:test # frontend units: amounts, prices, budgets, order trail
yarn next:test:e2e # Playwright at 1440 and 390, every UI state| Suite | Tests |
|---|---|
Unit (OrderVault.t.sol, OrderVault.edges.t.sol, PriceMath.t.sol, handler checks) | 104 |
| Fuzz (vault and price maths, 256 runs each) | 12 |
| Invariant (escrow, solvency, credits, bookkeeping, NFTs, liveness; 256 runs × 500 calls) | 6 |
| Fork (live testnet) | 3 |
| Frontend unit / e2e | 34 / 59 (30 specs at two widths; the burger-menu spec only runs at 390), plus one live-testnet spec |
Coverage of OrderVault.sol: 99.4% of lines, 96.1% of branches, 100% of functions; the libraries are at 100%. The handful of lines and branches the report marks uncovered are forge coverage --ir-minimum instrumentation artifacts — identical return/revert/break statements the IR pipeline merges into one target, plus a branch the fuzz suite exercises — so the code is behaviourally 100% covered; the neighbouring statements' hit counts show every path runs. The e2e suite runs a production build against a mocked relay, mirror node and injected wallet, so it is deterministic and never signs anything.
From README.md at v1.1 (6ddd9a3) · View source