mirror of
https://github.com/priyanshujain/sanderling.git
synced 2026-10-02 19:17:10 +00:00
f9512354ed981d7996c51de2d5d0c8fa6acea8f0
Collapse noDuplicateTxnPerStep and newTxnChangesBalance into a single per-row property: every newly-appearing ledger row's signed amount must match the ledger balance delta. A double-submit lands two rows whose individual amounts cannot both equal the aggregate delta, so each row fires the property, catching both the row-count and balance-math classes of bug under one semantic invariant.
sanderling
Autonomous property-based testing for mobile and web apps. Specs in TypeScript. Core in Go.
Alpha. Android, iOS, and web (Chrome). Full scope in the v0.1.0 roadmap.
Docs
- Getting started
- Writing specs
sanderling inspectUI- Examples: folio (KMP, Android/iOS/web), folio-web (React + Vite)
- Architecture
After a sanderling test run, browse traces locally with sanderling inspect. It opens a web UI for stepping through actions, screenshots, snapshots, residual formulas, and exceptions.
sanderling, a wading bird that probes the shoreline for bugs that lie beneath.
Languages
Go
74.6%
TypeScript
15.2%
Kotlin
5.5%
Shell
2.7%
Swift
1%
Other
0.9%