content: -- | This module provides a framework for testing Plutus contracts built on "Test.QuickCheck". The
  --   testing is model based, so to test a contract you define a type modelling the state of the
  --   contract (or set of contracts) and provide an instance of the `ContractModel` class. This
  --   instance specifies what operations (`Action`s) the contract supports, how they interact with
  --   the model state, and how to execute them in the blockchain emulator ("Plutus.Trace.Emulator").
  --   Tests are evaluated by running sequences of actions (random or user-specified) in the emulator
  --   and comparing the state of the blockchain to the model state at the end.
  --
  --   Test cases are written in the `DL` monad, which supports mixing fixed sequences of actions with
  --   random actions, making it easy to write properties like
  --   /it is always possible to get all funds out of the contract/.
  module Plutus.Contract.Test.ContractModel ( module Interface ) where
  import Plutus.Contract.Test.ContractModel.Interface as Interface
  