module Test.QuickCheck.Instances.Eq (notEqualTo, notOneof) where import Test.QuickCheck import Test.QuickCheck.Checkers import Control.Monad.Extensions notEqualTo :: (Eq a,Arbitrary a) => a -> Gen a -> Gen a notEqualTo v = satisfiesM (/= v) notOneof :: (Eq a,Arbitrary a) => [a] -> Gen a notOneof es = arbitrarySatisfying (not . (`elem` es))