experimenter-0.1.0.0: test/TestExperimenter/Serialise/Instances.hs
{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
module TestExperimenter.Serialise.Instances
( St (..)
) where
import Control.DeepSeq
import Data.Serialize
import GHC.Generics
import Test.Hspec
import Test.QuickCheck
data St = St Int Double
deriving (Show, Eq, Ord, Generic, Serialize, NFData)
instance Arbitrary St where
arbitrary = St <$> arbitrary <*> arbitrary
instance CoArbitrary St where
coarbitrary (St int double) = variant 0 . coarbitrary (int, double)