{-# 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)) => LedgerState blk EmptyMK -> LedgerState blk ValuesMK -> Property prop_stowable_laws @ByronBlock) , TestName -> (LedgerState ByronBlock EmptyMK -> LedgerTables (LedgerState ByronBlock) ValuesMK -> Property) -> TestTree forall a. Testable a => TestName -> a -> TestTree testProperty TestName "HasLedgerTables laws" (forall blk. HasLedgerTables (LedgerState blk) => LedgerState blk EmptyMK -> LedgerTables (LedgerState blk) ValuesMK -> Property prop_hasledgertables_laws @ByronBlock) ]