{-# LANGUAGE TypeApplications #-} module Main where import Cardano.Ledger.Mary (MaryEra) import Test.Cardano.Ledger.Common import qualified Test.Cardano.Ledger.Mary.Binary.CddlSpec as CddlSpec import qualified Test.Cardano.Ledger.Mary.BinarySpec as BinarySpec import qualified Test.Cardano.Ledger.Mary.Imp as Imp import Test.Cardano.Ledger.Mary.ImpTest () import qualified Test.Cardano.Ledger.Mary.ValueSpec as ValueSpec main :: IO () IO () main = Spec -> IO () ledgerTestMain forall a b. (a -> b) -> a -> b $ forall a. HasCallStack => String -> SpecWith a -> SpecWith a describe String "Mary" forall a b. (a -> b) -> a -> b $ do Spec ValueSpec.spec Spec BinarySpec.spec Spec CddlSpec.spec forall a. HasCallStack => String -> SpecWith a -> SpecWith a describe String "Imp" forall a b. (a -> b) -> a -> b $ do forall era. (Arbitrary (TxAuxData era), MaryEraImp era, AllegraEraScript era, InjectRuleFailure "LEDGER" ShelleyUtxoPredFailure era, InjectRuleFailure "LEDGER" ShelleyUtxowPredFailure era) => Spec Imp.spec @MaryEra