{-# LANGUAGE TypeApplications #-} module Main where import Cardano.Ledger.Babbage (Babbage) import qualified Test.Cardano.Ledger.Alonzo.Binary.CostModelsSpec as CostModelsSpec import qualified Test.Cardano.Ledger.Alonzo.Binary.TxWitsSpec as TxWitsSpec import qualified Test.Cardano.Ledger.Babbage.Binary.CddlSpec as CddlSpec import qualified Test.Cardano.Ledger.Babbage.BinarySpec as BinarySpec import qualified Test.Cardano.Ledger.Babbage.GoldenTranslation as Golden import qualified Test.Cardano.Ledger.Babbage.Imp as Imp import Test.Cardano.Ledger.Babbage.ImpTest () import Test.Cardano.Ledger.Common import Test.Cardano.Ledger.Core.JSON (roundTripJsonEraSpec) main :: IO () IO () main = Spec -> IO () ledgerTestMain forall a b. (a -> b) -> a -> b $ forall a. HasCallStack => String -> SpecWith a -> SpecWith a describe String "Babbage" forall a b. (a -> b) -> a -> b $ do Spec Golden.spec Spec BinarySpec.spec Spec CddlSpec.spec forall era. (HasCallStack, EraPParams era, Arbitrary (PParams era)) => Spec roundTripJsonEraSpec @Babbage forall a. HasCallStack => String -> SpecWith a -> SpecWith a describe String "Imp" forall a b. (a -> b) -> a -> b $ do forall era. (Arbitrary (TxAuxData era), AlonzoEraImp era, BabbageEraTxOut era, InjectRuleFailure "LEDGER" ShelleyUtxoPredFailure era, InjectRuleFailure "LEDGER" AlonzoUtxoPredFailure era, InjectRuleFailure "LEDGER" AlonzoUtxosPredFailure era, InjectRuleFailure "LEDGER" AlonzoUtxowPredFailure era, InjectRuleFailure "LEDGER" ShelleyUtxowPredFailure era, InjectRuleFailure "LEDGER" BabbageUtxowPredFailure era, Inject (BabbageContextError era) (ContextError era)) => Spec Imp.spec @Babbage forall a. HasCallStack => String -> SpecWith a -> SpecWith a describe String "CostModels" forall a b. (a -> b) -> a -> b $ do forall era. (AlonzoEraPParams era, AlonzoEraScript era) => Spec CostModelsSpec.spec @Babbage forall a. HasCallStack => String -> SpecWith a -> SpecWith a describe String "TxWits" forall a b. (a -> b) -> a -> b $ do forall era. (AlonzoEraScript era, Script era ~ AlonzoScript era, NativeScript era ~ Timelock era) => Spec TxWitsSpec.spec @Babbage