This repo contains a variety of minimal examples showcasing the testing of DApps written in plutus using the quickcheck contractmodel library. This contains examples using a variety of techniques and emulators. The emulators include the plutus-apps emulator, cooked emulator and the cardano-node-emulator. Techniques include model-based property testing, threat modelling such as double satisfaction as well as negative testing. Each example is contained in a separate branch and written with a minimal configuration so that it can be taken and adapted for other developers.
The notable branches are listed below by emulator:
plutus-apps emulator
- Escrow
- EscrowNoCoverage
- Vesting
- governance
cooked emuator
- escrow-cooked
- minimal-lotto-experimental
- auction-cooked
cardano-node-emulator
- escrow-node-emulator
- vesting-node-emulator
- go to the escrow folder
- run
nix develop cabal build escrow
To enter testing repl after step 2 run in the escrow directory:
cabal repl escrow-test
To run tests after step 2 run in the escrow directory:
cabal run escrow-test