IntersectMBO / plutus

The Plutus language implementation and tools
Apache License 2.0
1.55k stars 466 forks source link

QuickCheck `Arbitrary` instances for Ledger types #6210

Open SeungheonOh opened 3 weeks ago

SeungheonOh commented 3 weeks ago

Describe the feature you'd like

Currently, each projects need to write some property testing generator and shrinker on per-project biases, making testing not only more difficult but possibly more inconsistent and un-standardized. Quickcheck Arbirary instances for each types that PlutusLedgerApi exports would immensely help when testing scripts, generating some place-holder values, or even maintaining eDSL equivalent for ledger api--for example, Plutarch.

effectfully commented 2 weeks ago

That would be great to have indeed. I've brought it to the team and the team agreed.

I'm going to mark this issue as "low priority" though, since it's not a bug or similar.

PR would be very welcome.