-- SPDX-FileCopyrightText: 2022 Gregor Kleen -- -- SPDX-License-Identifier: AGPL-3.0-or-later module Test.QuickCheck.Classes.PersistField ( persistFieldLaws ) where import ClassyPrelude import Test.QuickCheck import Test.QuickCheck.Classes import Database.Persist import Data.Proxy persistFieldLaws :: forall a. (Arbitrary a, PersistField a, Eq a, Show a) => Proxy a -> Laws persistFieldLaws _ = Laws "PersistField" [ ("Partial Isomorphism", property $ \(a :: a) -> fromPersistValue (toPersistValue a) == Right a) ]