module Test.Hedgehog.Roundtrip.Bech32 ( roundtrip_Bech32 ) where import Cardano.Api import Hedgehog (Gen, Property) import Hedgehog qualified as H roundtrip_Bech32 :: (SerialiseAsBech32 a, Eq a, Show a) => Gen a -> Property roundtrip_Bech32 :: forall a. (SerialiseAsBech32 a, Eq a, Show a) => Gen a -> Property roundtrip_Bech32 Gen a gen = HasCallStack => PropertyT IO () -> Property PropertyT IO () -> Property H.property (PropertyT IO () -> Property) -> PropertyT IO () -> Property forall a b. (a -> b) -> a -> b $ do val <- Gen a -> PropertyT IO a forall (m :: * -> *) a. (Monad m, Show a, HasCallStack) => Gen a -> PropertyT m a H.forAll Gen a gen H.tripping val serialiseToBech32 deserialiseFromBech32