storage-test
Safe HaskellNone
LanguageHaskell2010

Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

Synopsis

Documentation

data BackingStoreState ks vs d Source #

Constructors

BackingStoreState 

Fields

Instances

Instances details
InterpretOp Op (ModelValue (BackingStoreState ks vs d)) Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

Methods

intOpOp a b → ModelValue (BackingStoreState ks vs d) a → Maybe (ModelValue (BackingStoreState ks vs d) b) Source #

(Show ks, Show vs, Show d, Show (InitHint vs), Show (WriteHint d), Show (ReadHint vs), Eq ks, Eq vs, Eq d, Eq (InitHint vs), Eq (WriteHint d), Eq (ReadHint vs), Typeable ks, Typeable vs, Typeable d, Typeable (WriteHint d), Arbitrary ks, Arbitrary vs, Arbitrary d, Arbitrary (RangeQuery ks), HasOps ks vs d) ⇒ StateModel (Lockstep (BackingStoreState ks vs d)) Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

Associated Types

type Error (Lockstep (BackingStoreState ks vs d)) 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

(Show ks, Show vs, Show d, Show (InitHint vs), Show (WriteHint d), Show (ReadHint vs), Eq ks, Eq vs, Eq d, Eq (InitHint vs), Eq (WriteHint d), Eq (ReadHint vs), Typeable ks, Typeable vs, Typeable d, Typeable (WriteHint d), Arbitrary ks, Arbitrary vs, Arbitrary d, Arbitrary (RangeQuery ks), HasOps ks vs d) ⇒ RunModel (Lockstep (BackingStoreState ks vs d)) (RealMonad IO ks vs d) Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

Methods

performTypeable a ⇒ Lockstep (BackingStoreState ks vs d) → Action (Lockstep (BackingStoreState ks vs d)) a → LookUp (RealMonad IO ks vs d) → RealMonad IO ks vs d (PerformResult (Error (Lockstep (BackingStoreState ks vs d))) (Realized (RealMonad IO ks vs d) a)) Source #

postcondition ∷ (Lockstep (BackingStoreState ks vs d), Lockstep (BackingStoreState ks vs d)) → Action (Lockstep (BackingStoreState ks vs d)) a → LookUp (RealMonad IO ks vs d) → Realized (RealMonad IO ks vs d) a → PostconditionM (RealMonad IO ks vs d) Bool Source #

postconditionOnFailure ∷ (Lockstep (BackingStoreState ks vs d), Lockstep (BackingStoreState ks vs d)) → Action (Lockstep (BackingStoreState ks vs d)) a → LookUp (RealMonad IO ks vs d) → Either (Error (Lockstep (BackingStoreState ks vs d))) (Realized (RealMonad IO ks vs d) a) → PostconditionM (RealMonad IO ks vs d) Bool Source #

monitoring ∷ (Lockstep (BackingStoreState ks vs d), Lockstep (BackingStoreState ks vs d)) → Action (Lockstep (BackingStoreState ks vs d)) a → LookUp (RealMonad IO ks vs d) → Either (Error (Lockstep (BackingStoreState ks vs d))) (Realized (RealMonad IO ks vs d) a) → PropertyProperty Source #

monitoringFailureLockstep (BackingStoreState ks vs d) → Action (Lockstep (BackingStoreState ks vs d)) a → LookUp (RealMonad IO ks vs d) → Error (Lockstep (BackingStoreState ks vs d)) → PropertyProperty Source #

(Show ks, Show vs, Show d, Show (InitHint vs), Show (WriteHint d), Show (ReadHint vs), Show (SerializeTablesHint vs)) ⇒ Show (LockstepAction (BackingStoreState ks vs d) a) Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

(Eq ks, Eq vs, Eq d, Eq (InitHint vs), Eq (WriteHint d), Eq (ReadHint vs), Eq (SerializeTablesHint vs)) ⇒ Eq (LockstepAction (BackingStoreState ks vs d) a) Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

Show vs ⇒ Show (BackingStoreState ks vs d) Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

Methods

showsPrecIntBackingStoreState ks vs d → ShowS #

showBackingStoreState ks vs d → String #

showList ∷ [BackingStoreState ks vs d] → ShowS #

Eq vs ⇒ Eq (BackingStoreState ks vs d) Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

Methods

(==)BackingStoreState ks vs d → BackingStoreState ks vs d → Bool #

(/=)BackingStoreState ks vs d → BackingStoreState ks vs d → Bool #

(Show ks, Show vs, Show d, Show (InitHint vs), Show (WriteHint d), Show (ReadHint vs), Eq ks, Eq vs, Eq d, Eq (InitHint vs), Eq (WriteHint d), Eq (ReadHint vs), Typeable ks, Typeable vs, Typeable d, Typeable (WriteHint d), Arbitrary ks, Arbitrary vs, Arbitrary d, Arbitrary (RangeQuery ks), HasOps ks vs d) ⇒ InLockstep (BackingStoreState ks vs d) Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

Associated Types

type ModelOp (BackingStoreState ks vs d) 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

type ModelOp (BackingStoreState ks vs d) = Op
(Show ks, Show vs, Show d, Show (InitHint vs), Show (WriteHint d), Show (ReadHint vs), Eq ks, Eq vs, Eq d, Eq (InitHint vs), Eq (WriteHint d), Eq (ReadHint vs), Typeable ks, Typeable vs, Typeable d, Typeable (WriteHint d), Arbitrary ks, Arbitrary vs, Arbitrary d, Arbitrary (RangeQuery ks), HasOps ks vs d) ⇒ RunLockstep (BackingStoreState ks vs d) (RealMonad IO ks vs d) Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

Methods

observeRealProxy (RealMonad IO ks vs d) → LockstepAction (BackingStoreState ks vs d) a → Realized (RealMonad IO ks vs d) a → Observable (BackingStoreState ks vs d) a Source #

showRealResponseProxy (RealMonad IO ks vs d) → LockstepAction (BackingStoreState ks vs d) a → Maybe (Dict (Show (Realized (RealMonad IO ks vs d) a))) Source #

data Action (Lockstep (BackingStoreState ks vs d)) a Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

data Action (Lockstep (BackingStoreState ks vs d)) a where
type Error (Lockstep (BackingStoreState ks vs d)) Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

type ModelOp (BackingStoreState ks vs d) Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

type ModelOp (BackingStoreState ks vs d) = Op
data ModelValue (BackingStoreState ks vs d) a Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

data ModelValue (BackingStoreState ks vs d) a where
data Observable (BackingStoreState ks vs d) a Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

data Observable (BackingStoreState ks vs d) a where

data RealEnv (m ∷ TypeType) ks vs d Source #

Constructors

RealEnv 

Fields

Instances

Instances details
(Show ks, Show vs, Show d, Show (InitHint vs), Show (WriteHint d), Show (ReadHint vs), Eq ks, Eq vs, Eq d, Eq (InitHint vs), Eq (WriteHint d), Eq (ReadHint vs), Typeable ks, Typeable vs, Typeable d, Typeable (WriteHint d), Arbitrary ks, Arbitrary vs, Arbitrary d, Arbitrary (RangeQuery ks), HasOps ks vs d) ⇒ RunModel (Lockstep (BackingStoreState ks vs d)) (RealMonad IO ks vs d) Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

Methods

performTypeable a ⇒ Lockstep (BackingStoreState ks vs d) → Action (Lockstep (BackingStoreState ks vs d)) a → LookUp (RealMonad IO ks vs d) → RealMonad IO ks vs d (PerformResult (Error (Lockstep (BackingStoreState ks vs d))) (Realized (RealMonad IO ks vs d) a)) Source #

postcondition ∷ (Lockstep (BackingStoreState ks vs d), Lockstep (BackingStoreState ks vs d)) → Action (Lockstep (BackingStoreState ks vs d)) a → LookUp (RealMonad IO ks vs d) → Realized (RealMonad IO ks vs d) a → PostconditionM (RealMonad IO ks vs d) Bool Source #

postconditionOnFailure ∷ (Lockstep (BackingStoreState ks vs d), Lockstep (BackingStoreState ks vs d)) → Action (Lockstep (BackingStoreState ks vs d)) a → LookUp (RealMonad IO ks vs d) → Either (Error (Lockstep (BackingStoreState ks vs d))) (Realized (RealMonad IO ks vs d) a) → PostconditionM (RealMonad IO ks vs d) Bool Source #

monitoring ∷ (Lockstep (BackingStoreState ks vs d), Lockstep (BackingStoreState ks vs d)) → Action (Lockstep (BackingStoreState ks vs d)) a → LookUp (RealMonad IO ks vs d) → Either (Error (Lockstep (BackingStoreState ks vs d))) (Realized (RealMonad IO ks vs d) a) → PropertyProperty Source #

monitoringFailureLockstep (BackingStoreState ks vs d) → Action (Lockstep (BackingStoreState ks vs d)) a → LookUp (RealMonad IO ks vs d) → Error (Lockstep (BackingStoreState ks vs d)) → PropertyProperty Source #

(Show ks, Show vs, Show d, Show (InitHint vs), Show (WriteHint d), Show (ReadHint vs), Eq ks, Eq vs, Eq d, Eq (InitHint vs), Eq (WriteHint d), Eq (ReadHint vs), Typeable ks, Typeable vs, Typeable d, Typeable (WriteHint d), Arbitrary ks, Arbitrary vs, Arbitrary d, Arbitrary (RangeQuery ks), HasOps ks vs d) ⇒ RunLockstep (BackingStoreState ks vs d) (RealMonad IO ks vs d) Source # 
Instance details

Defined in Test.Ouroboros.Storage.LedgerDB.V1.BackingStore.Lockstep

Methods

observeRealProxy (RealMonad IO ks vs d) → LockstepAction (BackingStoreState ks vs d) a → Realized (RealMonad IO ks vs d) a → Observable (BackingStoreState ks vs d) a Source #

showRealResponseProxy (RealMonad IO ks vs d) → LockstepAction (BackingStoreState ks vs d) a → Maybe (Dict (Show (Realized (RealMonad IO ks vs d) a))) Source #

type RealMonad (m ∷ TypeType) ks vs d = ReaderT (RealEnv m ks vs d) m Source #

maxOpenValueHandlesInt Source #

Maximum number of LMDB readers that can be active at a time.

32 is an arbitrary number of readers. We can increase or decrease this at will.