module Main ( main, ) where import Cardano.Prelude import qualified Test.Cardano.Chain.Block.CBOR import qualified Test.Cardano.Chain.Block.Model import qualified Test.Cardano.Chain.Block.Size import qualified Test.Cardano.Chain.Block.Validation import qualified Test.Cardano.Chain.Block.ValidationMode import qualified Test.Cardano.Chain.Buildable import qualified Test.Cardano.Chain.Byron.API import qualified Test.Cardano.Chain.Common.Address import qualified Test.Cardano.Chain.Common.Attributes import qualified Test.Cardano.Chain.Common.CBOR import qualified Test.Cardano.Chain.Common.Compact import qualified Test.Cardano.Chain.Common.Lovelace import qualified Test.Cardano.Chain.Delegation.CBOR import qualified Test.Cardano.Chain.Delegation.Certificate import qualified Test.Cardano.Chain.Delegation.Model import qualified Test.Cardano.Chain.Elaboration.Delegation import qualified Test.Cardano.Chain.Epoch.File import qualified Test.Cardano.Chain.Genesis.CBOR import qualified Test.Cardano.Chain.Genesis.Json import qualified Test.Cardano.Chain.MempoolPayload.CBOR import qualified Test.Cardano.Chain.Slotting.CBOR import qualified Test.Cardano.Chain.Slotting.Properties import qualified Test.Cardano.Chain.Ssc.CBOR import qualified Test.Cardano.Chain.UTxO.CBOR import qualified Test.Cardano.Chain.UTxO.Compact import qualified Test.Cardano.Chain.UTxO.Model import qualified Test.Cardano.Chain.UTxO.ValidationMode import qualified Test.Cardano.Chain.Update.CBOR import qualified Test.Cardano.Chain.Update.Properties import Test.Options (ShouldAssertNF (..), mainWithTestScenario, tsGroupToTree) import Test.Tasty (testGroup) main :: IO () IO () main = TestTree -> IO () mainWithTestScenario forall a b. (a -> b) -> a -> b $ TestName -> [TestTree] -> TestTree testGroup TestName "Cardano Ledger Tests" forall a b. (a -> b) -> a -> b $ TSGroup -> TestTree tsGroupToTree forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b <$> [ TSGroup Test.Cardano.Chain.Block.CBOR.tests , TSGroup Test.Cardano.Chain.Block.Model.tests , TSGroup Test.Cardano.Chain.Block.Size.tests , ShouldAssertNF -> TSGroup Test.Cardano.Chain.Block.Validation.tests ShouldAssertNF NoAssertNF , TSGroup Test.Cardano.Chain.Block.ValidationMode.tests , TSGroup Test.Cardano.Chain.Buildable.tests , TSGroup Test.Cardano.Chain.Common.Address.tests , TSGroup Test.Cardano.Chain.Common.Attributes.tests , TSGroup Test.Cardano.Chain.Common.CBOR.tests , TSGroup Test.Cardano.Chain.Common.Compact.tests , TSGroup Test.Cardano.Chain.Common.Lovelace.tests , TSGroup Test.Cardano.Chain.Delegation.CBOR.tests , forall a b. a -> b -> a const Group Test.Cardano.Chain.Delegation.Certificate.tests , forall a b. a -> b -> a const Group Test.Cardano.Chain.Delegation.Model.tests , forall a b. a -> b -> a const Group Test.Cardano.Chain.Epoch.File.tests , TSGroup Test.Cardano.Chain.Elaboration.Delegation.tests , TSGroup Test.Cardano.Chain.Genesis.CBOR.tests , TSGroup Test.Cardano.Chain.Genesis.Json.tests , TSGroup Test.Cardano.Chain.MempoolPayload.CBOR.tests , TSGroup Test.Cardano.Chain.Slotting.CBOR.tests , TSGroup Test.Cardano.Chain.Slotting.Properties.tests , forall a b. a -> b -> a const Group Test.Cardano.Chain.Ssc.CBOR.tests , TSGroup Test.Cardano.Chain.UTxO.CBOR.tests , TSGroup Test.Cardano.Chain.UTxO.Compact.tests , TSGroup Test.Cardano.Chain.UTxO.Model.tests , TSGroup Test.Cardano.Chain.UTxO.ValidationMode.tests , TSGroup Test.Cardano.Chain.Update.CBOR.tests , TSGroup Test.Cardano.Chain.Update.Properties.tests , TSGroup Test.Cardano.Chain.Byron.API.tests ]