cabal-version: 3.0
name: hedgehog-lockstep
version: 0.1.0.0
synopsis: Lockstep-style stateful property testing for Hedgehog
description:
Lockstep-style testing of stateful APIs built on Hedgehog's
state machine framework. Ports the ideas of quickcheck-lockstep onto
Hedgehog, giving integrated shrinking, parallel testing, and less
boilerplate than the QuickCheck / quickcheck-dynamic / quickcheck-lockstep
stack.
license: BSD-3-Clause
license-file: LICENSE
author: Josh Burgess
maintainer: joshualoganburgess@gmail.com
copyright: (c) 2026 Josh Burgess
category: Testing
homepage: https://github.com/joshburgess/hedgehog-lockstep
bug-reports: https://github.com/joshburgess/hedgehog-lockstep/issues
build-type: Simple
extra-doc-files:
CHANGELOG.md
README.md
tested-with:
GHC ==9.6.7
|| ==9.8.4
|| ==9.10.3
|| ==9.12.4
source-repository head
type: git
location: https://github.com/joshburgess/hedgehog-lockstep.git
flag werror
description: Turn warnings into errors (development only, not for releases).
default: False
manual: True
common warnings
ghc-options:
-Wall -Wcompat -Wno-unticked-promoted-constructors
-funbox-strict-fields
if flag(werror)
ghc-options: -Werror
library
import: warnings
hs-source-dirs: src
default-language: GHC2021
default-extensions:
DerivingStrategies
GADTs
LambdaCase
OverloadedStrings
RecordWildCards
StrictData
exposed-modules:
Hedgehog.Lockstep
Hedgehog.Lockstep.Command
Hedgehog.Lockstep.Examples
Hedgehog.Lockstep.GVar
Hedgehog.Lockstep.Observe
Hedgehog.Lockstep.Op
Hedgehog.Lockstep.Property
Hedgehog.Lockstep.State
build-depends:
, barbies >=2.0 && <2.2
, base >=4.18 && <4.22
, containers >=0.6 && <0.9
, hedgehog >=1.4 && <1.6
test-suite hedgehog-lockstep-test
import: warnings
type: exitcode-stdio-1.0
hs-source-dirs: test
main-is: Main.hs
default-language: GHC2021
default-extensions:
DerivingStrategies
GADTs
LambdaCase
OverloadedStrings
RecordWildCards
StrictData
other-modules:
Test.BuggyCounter
Test.CustomOp
Test.HandleStore
Test.KVStore
Test.LabelledExamples
Test.Observation
Test.OpProjections
Test.ParallelKV
Test.PureSort
Test.ReaderKV
Test.UnitCoverage
build-depends:
, base >=4.18 && <4.22
, barbies >=2.0 && <2.2
, containers >=0.6 && <0.9
, hedgehog >=1.4 && <1.6
, hedgehog-lockstep
, mtl >=2.2 && <2.4