hedgehog-quickcheck [![Hackage][hackage-shield]][hackage] =================== > Hedgehog will eat all your bugs. Use [QuickCheck](http://hackage.haskell.org/package/QuickCheck) generators in [Hedgehog](http://hedgehog.qa/) and vice versa. ## Example The [Hedgehog.Gen.QuickCheck][haddock-hedgehog-gen-quickcheck] module allows the use of QuickCheck generators inside Hedgehog. ```hs {-# LANGUAGE TemplateHaskell #-} import Hedgehog import qualified Hedgehog.Gen as Gen import qualified Hedgehog.Gen.QuickCheck as Gen import qualified Hedgehog.Range as Range ``` Once you have your imports set up, you can write a property which mixes QuickCheck and Hedgehog generators together: ```hs prop_reverse :: Property prop_reverse = property $ do xs <- forAll $ Gen.list (Range.linear 0 100) (Gen.arbitrary :: Gen Char) reverse (reverse xs) === xs ``` And add the Template Haskell splice which will discover your properties: ```hs tests :: IO Bool tests = checkParallel $$(discover) ``` You can then load the module in GHCi, and run it: ``` λ tests ━━━ Test.Example ━━━ ✓ prop_reverse passed 100 tests. ``` [hackage]: http://hackage.haskell.org/package/hedgehog-quickcheck [hackage-shield]: https://img.shields.io/hackage/v/hedgehog-quickcheck.svg [haddock-hedgehog-gen-quickcheck]: http://hackage.haskell.org/package/hedgehog-quickcheck/docs/Hedgehog-Gen-QuickCheck.html