{-# LANGUAGE TypeApplications #-} module Test.Consensus.Byron.LedgerTables (tests) where import Ouroboros.Consensus.Byron.Ledger import Test.Consensus.Byron.Generators () import Test.LedgerTables import Test.Tasty import Test.Tasty.QuickCheck tests :: TestTree tests :: TestTree tests = TestName -> [TestTree] -> TestTree testGroup TestName "LedgerTables" [ TestName -> (LedgerState ByronBlock EmptyMK -> LedgerState ByronBlock ValuesMK -> Property) -> TestTree forall a. Testable a => TestName -> a -> TestTree testProperty TestName "Stowable laws" (forall blk. (HasLedgerTables LedgerState blk, CanStowLedgerTables (LedgerState blk), Show (TxIn blk), Show (TxOut blk)) => LedgerState blk EmptyMK -> LedgerState blk ValuesMK -> Property prop_stowable_laws @ByronBlock) , TestName -> (LedgerState ByronBlock EmptyMK -> LedgerTables ByronBlock ValuesMK -> Property) -> TestTree forall a. Testable a => TestName -> a -> TestTree testProperty TestName "HasLedgerTables laws" (forall blk. (HasLedgerTables LedgerState blk, Show (TxIn blk), Show (TxOut blk)) => LedgerState blk EmptyMK -> LedgerTables blk ValuesMK -> Property prop_hasledgertables_laws @ByronBlock) ]