cabal-version: 3.4 name: quickcheck-lockstep version: 0.8.2 license: BSD-3-Clause license-file: LICENSE author: Edsko de Vries maintainer: edsko@well-typed.com, joris@well-typed.com extra-doc-files: CHANGELOG.md README.md category: Testing synopsis: Library for lockstep-style testing with 'quickcheck-dynamic' description: Lockstep-style testing is a particular approach for blackbox testing of stateful APIs: we generate a random sequence of APIs calls, then execute them both against the system under test and against a model, and compare responses up to some notion of observability. tested-with: GHC ==8.10 || ==9.0 || ==9.2 || ==9.4 || ==9.6 || ==9.8 || ==9.10 || ==9.12 source-repository head type: git location: https://github.com/well-typed/quickcheck-lockstep source-repository this type: git location: https://github.com/well-typed/quickcheck-lockstep tag: quickcheck-lockstep-0.8.2 common language -- This is at the top-level so that `cabal check` does not complain. default-language: Haskell2010 -- For newer GHC's, override Haskell2010 with GHC2021 if impl(ghc >=9.2.1) default-language: GHC2021 -- For older GHC's, manually enable all language extensions that are in -- GHC2021 -- -- NOTE: FieldSelectors is not supported on ghc-8.10.7, so it is the only -- language extension that is missing compared to GHC2021 else default-extensions: BangPatterns BinaryLiterals ConstrainedClassMethods ConstraintKinds DeriveDataTypeable DeriveFoldable DeriveFunctor DeriveGeneric DeriveLift DeriveTraversable DoAndIfThenElse EmptyCase EmptyDataDecls EmptyDataDeriving ExistentialQuantification ExplicitForAll FlexibleContexts FlexibleInstances ForeignFunctionInterface GADTSyntax GeneralisedNewtypeDeriving HexFloatLiterals ImplicitPrelude ImportQualifiedPost InstanceSigs KindSignatures MonomorphismRestriction MultiParamTypeClasses NamedFieldPuns NamedWildCards NoExplicitNamespaces NumericUnderscores PatternGuards PolyKinds PostfixOperators RankNTypes RelaxedPolyRec ScopedTypeVariables StandaloneDeriving StandaloneKindSignatures StarIsType TraditionalRecordSyntax TupleSections TypeApplications TypeOperators TypeSynonymInstances -- Extensions that we enable by default default-extensions: DeriveAnyClass DerivingStrategies DerivingVia ExplicitNamespaces GADTs LambdaCase RecordWildCards RoleAnnotations ViewPatterns common warnings ghc-options: -Wall -Wcompat -Wincomplete-uni-patterns -Wincomplete-record-updates -Wpartial-fields -Widentities -Wredundant-constraints -Wmissing-export-lists -Wno-unticked-promoted-constructors -Wunused-packages ghc-options: -Werror=missing-deriving-strategies library import: language, warnings exposed-modules: Test.QuickCheck.StateModel.Lockstep Test.QuickCheck.StateModel.Lockstep.Defaults Test.QuickCheck.StateModel.Lockstep.Op Test.QuickCheck.StateModel.Lockstep.Op.Identity Test.QuickCheck.StateModel.Lockstep.Op.SumProd Test.QuickCheck.StateModel.Lockstep.Run other-modules: Test.QuickCheck.StateModel.Lockstep.API Test.QuickCheck.StateModel.Lockstep.EnvF Test.QuickCheck.StateModel.Lockstep.GVar -- quickcheck-dynamic requires ghc 8.10 minimum build-depends: , base >=4.14 && <4.22 , constraints ^>=0.13 || ^>=0.14 , containers ^>=0.6 || ^>=0.7 || ^>=0.8 , mtl ^>=2.2 || ^>=2.3 , QuickCheck ^>=2.14 || ^>=2.15 || ^>=2.16 || ^>=2.17 , quickcheck-dynamic ^>=4.0 hs-source-dirs: src test-suite test-quickcheck-lockstep import: language, warnings type: exitcode-stdio-1.0 hs-source-dirs: test main-is: Main.hs other-modules: Test.Golden Test.IORef.Full Test.IORef.Simple Test.MockFS Test.MockFS.Mock default-extensions: DeriveGeneric EmptyCase -- Version bounds determined by main lib build-depends: , base <5 , constraints , containers , directory , filepath , mtl , QuickCheck , quickcheck-dynamic , quickcheck-lockstep , tasty , tasty-golden , tasty-hunit , tasty-quickcheck , temporary test-suite test-internals import: language, warnings type: exitcode-stdio-1.0 hs-source-dirs: test-internals src main-is: Main.hs other-modules: Test.QuickCheck.StateModel.Lockstep.EnvF Test.QuickCheck.StateModel.Lockstep.GVar Test.QuickCheck.StateModel.Lockstep.Op Test.QuickCheck.StateModel.Lockstep.Op.SumProd Test.Test.QuickCheck.StateModel.Lockstep.GVar -- Version bounds determined by main lib build-depends: , base <5 , mtl , quickcheck-dynamic , tasty , tasty-quickcheck