Skip to content

Latest commit

 

History

History
18 lines (13 loc) · 417 Bytes

README.md

File metadata and controls

18 lines (13 loc) · 417 Bytes

quickcheck-combinators

Simply wrap the type you want to generate (assuming it satisfies all the necessary constraints) to refine the terms generated:

{-# LANGUAGE DataKinds #-}

import Data.Set (Set)
import Test.QuickCheck
import Test.QuickCheck.Instances
import GHC.TypeLits

instance Arbitrary LinearEquation where
  arbitrary = do
    vars <- arbitrary :: Gen (AtLeast 3 Set String)
    -- ...