{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE ScopedTypeVariables #-}
module Test.Validity
( module Data.GenValidity
, forAllUnchecked
, forAllValid
, forAllInvalid
, shouldBeValid
, shouldBeInvalid
, arbitrarySpec
, arbitraryGeneratesOnlyValid
, genValiditySpec
, genValidSpec
, genInvalidSpec
, genValidGeneratesValid
, genGeneratesValid
, genInvalidGeneratesInvalid
, genGeneratesInvalid
, shrinkValiditySpec
, shrinkValidSpec
, shrinkValidSpecWithLimit
, shrinkInvalidSpec
, shrinkValidPreservesValidOnGenValid
, shrinkInvalidPreservesInvalidOnGenInvalid
, shrinkPreservesValidOnGenValid
, shrinkPreservesInvalidOnGenInvalid
, shrinkValidPreservesValid
, shrinkInvalidPreservesInvalid
, shrinkingStaysValid
, shrinkingStaysInvalid
, shrinkingPreserves
, relativeValiditySpec
, relativeValidityImpliesValidA
, relativeValidityImpliesValidB
, genRelativeValiditySpec
, genRelativeValidGeneratesValid
, genRelativeInvalidGeneratesInvalid
, producesValidsOnGen
, producesValidsOnValids
, producesValid
, producesValidsOnArbitrary
, producesValidsOnGens2
, producesValidsOnValids2
, producesValid2
, producesValidsOnArbitrary2
, producesValidsOnGens3
, producesValidsOnValids3
, producesValid3
, producesValidsOnArbitrary3
, CanFail(..)
, succeedsOnGen
, succeedsOnValid
, succeeds
, succeedsOnArbitrary
, succeedsOnGens2
, succeedsOnValids2
, succeeds2
, succeedsOnArbitrary2
, failsOnGen
, failsOnInvalid
, failsOnGens2
, failsOnInvalid2
, validIfSucceedsOnGen
, validIfSucceedsOnValid
, validIfSucceedsOnArbitrary
, validIfSucceeds
, validIfSucceedsOnGens2
, validIfSucceedsOnValids2
, validIfSucceeds2
, validIfSucceedsOnArbitrary2
, validIfSucceedsOnGens3
, validIfSucceedsOnValids3
, validIfSucceeds3
, validIfSucceedsOnArbitrary3
, equivalentOnGen
, equivalentOnValid
, equivalent
, equivalentOnArbitrary
, equivalentOnGens2
, equivalentOnValids2
, equivalent2
, equivalentOnArbitrary2
, equivalentOnGens3
, equivalentOnValids3
, equivalent3
, equivalentOnArbitrary3
, equivalentWhenFirstSucceedsOnGen
, equivalentWhenFirstSucceedsOnValid
, equivalentWhenFirstSucceeds
, equivalentWhenFirstSucceedsOnArbitrary
, equivalentWhenFirstSucceedsOnGens2
, equivalentWhenFirstSucceedsOnValids2
, equivalentWhenFirstSucceeds2
, equivalentWhenFirstSucceedsOnArbitrary2
, equivalentWhenSecondSucceedsOnGen
, equivalentWhenSecondSucceedsOnValid
, equivalentWhenSecondSucceeds
, equivalentWhenSecondSucceedsOnArbitrary
, equivalentWhenSecondSucceedsOnGens2
, equivalentWhenSecondSucceedsOnValids2
, equivalentWhenSecondSucceeds2
, equivalentWhenSecondSucceedsOnArbitrary2
, equivalentWhenSucceedOnGen
, equivalentWhenSucceedOnValid
, equivalentWhenSucceed
, equivalentWhenSucceedOnArbitrary
, equivalentWhenSucceedOnGens2
, equivalentWhenSucceedOnValids2
, equivalentWhenSucceed2
, equivalentWhenSucceedOnArbitrary2
, inverseFunctionsOnGen
, inverseFunctionsOnValid
, inverseFunctions
, inverseFunctionsOnArbitrary
, inverseFunctionsIfFirstSucceedsOnGen
, inverseFunctionsIfFirstSucceedsOnValid
, inverseFunctionsIfFirstSucceeds
, inverseFunctionsIfFirstSucceedsOnArbitrary
, inverseFunctionsIfSecondSucceedsOnGen
, inverseFunctionsIfSecondSucceedsOnValid
, inverseFunctionsIfSecondSucceeds
, inverseFunctionsIfSecondSucceedsOnArbitrary
, inverseFunctionsIfSucceedOnGen
, inverseFunctionsIfSucceedOnValid
, inverseFunctionsIfSucceed
, inverseFunctionsIfSucceedOnArbitrary
, idempotentOnGen
, idempotentOnValid
, idempotent
, idempotentOnArbitrary
, reflexiveOnElem
, reflexivityOnGen
, reflexivityOnValid
, reflexivity
, reflexivityOnArbitrary
, transitiveOnElems
, transitivityOnGens
, transitivityOnValid
, transitivity
, transitivityOnArbitrary
, antisymmetricOnElemsWithEquality
, antisymmetryOnGensWithEquality
, antisymmetryOnGens
, antisymmetryOnValid
, antisymmetry
, antisymmetryOnArbitrary
, antireflexiveOnElem
, antireflexivityOnGen
, antireflexivityOnValid
, antireflexivity
, antireflexivityOnArbitrary
, symmetricOnElems
, symmetryOnGens
, symmetryOnValid
, symmetry
, symmetryOnArbitrary
, leftIdentityOnElemWithEquality
, leftIdentityOnGenWithEquality
, leftIdentityOnGen
, leftIdentityOnValid
, leftIdentity
, leftIdentityOnArbitrary
, rightIdentityOnElemWithEquality
, rightIdentityOnGenWithEquality
, rightIdentityOnGen
, rightIdentityOnValid
, rightIdentity
, rightIdentityOnArbitrary
, identityOnGen
, identityOnValid
, identity
, identityOnArbitrary
, associativeOnGens
, associativeOnValids
, associative
, associativeOnArbitrary
, commutativeOnGens
, commutativeOnValids
, commutative
, commutativeOnArbitrary
, eqSpecOnValid
, eqSpecOnInvalid
, eqSpec
, eqSpecOnArbitrary
, eqSpecOnGen
, ordSpecOnGen
, ordSpecOnValid
, ordSpecOnInvalid
, ordSpec
, ordSpecOnArbitrary
, monoidSpecOnValid
, monoidSpec
, monoidSpecOnArbitrary
, monoidSpecOnGen
, functorSpecOnValid
, functorSpec
, functorSpecOnArbitrary
, functorSpecOnGens
, applicativeSpecOnValid
, applicativeSpec
, applicativeSpecOnArbitrary
, applicativeSpecOnGens
, monadSpecOnValid
, monadSpec
, monadSpecOnArbitrary
, monadSpecOnGens
) where
import Data.GenValidity
import Test.Validity.Applicative
import Test.Validity.Arbitrary
import Test.Validity.Eq
import Test.Validity.Functions
import Test.Validity.Functor
import Test.Validity.GenRelativeValidity
import Test.Validity.GenValidity
import Test.Validity.Monad
import Test.Validity.Monoid
import Test.Validity.Operations
import Test.Validity.Ord
import Test.Validity.Property
import Test.Validity.RelativeValidity
import Test.Validity.Shrinking
import Test.Validity.Utils