morley-0.7.0: src/Michelson/Test.hs
-- | Module containing some utilities for testing Michelson contracts using
-- Haskell testing frameworks (hspec and QuickCheck in particular).
-- It's Morley testing EDSL.
module Michelson.Test
( -- * Importing a contract
specWithContract
, specWithContractL
, specWithTypedContract
, specWithUntypedContract
, testTreesWithContract
, testTreesWithContractL
, testTreesWithUntypedContract
, testTreesWithTypedContract
, concatTestTrees
, importUntypedContract
-- * Unit testing
, ContractReturn
, ContractPropValidator
, contractProp
, contractPropVal
-- * Integrational testing
-- ** Testing engine
, IntegrationalValidator
, SuccessValidator
, IntegrationalScenario
, IntegrationalScenarioM
, integrationalTestExpectation
, integrationalTestProperty
, originate
, transfer
, validate
, integrationalFail
, setMaxSteps
, setNow
, branchout
, (?-)
-- ** Validators
, composeValidators
, composeValidatorsList
, expectAnySuccess
, expectNoUpdates
, expectNoStorageUpdates
, expectStorageUpdate
, expectStorageUpdateConst
, expectBalance
, expectStorage
, expectStorageConst
, expectGasExhaustion
, expectMichelsonFailed
-- ** Various
, TxData (..)
, genesisAddress
-- * General utilities
, failedProp
, succeededProp
, qcIsLeft
, qcIsRight
-- * Autodoc testing
, runDocTests
, testDocBasic
, excludeDocTests
-- * Dummy values
, dummyContractEnv
-- * Arbitrary data
, minTimestamp
, maxTimestamp
, midTimestamp
) where
import Michelson.Doc.Test
import Michelson.Test.Dummy
import Michelson.Test.Gen
import Michelson.Test.Import
import Michelson.Test.Integrational
import Michelson.Test.Unit
import Michelson.Test.Util