storage-test
Safe HaskellNone
LanguageHaskell2010

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

Synopsis

Documentation

data BackingStoreState ks k vs d Source #

Constructors

BackingStoreState 

Fields

Instances

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

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

Methods

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

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

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

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

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

Associated Types

type Error (Lockstep (BackingStoreState ks k vs d)) (RealMonad IO ks k vs d) 
Instance details

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

type Error (Lockstep (BackingStoreState ks k vs d)) (RealMonad IO ks k vs d) = Void

Methods

performTypeable a ⇒ Lockstep (BackingStoreState ks k vs d) → Action (Lockstep (BackingStoreState ks k vs d)) a → LookUpRealMonad IO ks k vs d (PerformResult (Lockstep (BackingStoreState ks k vs d)) (RealMonad IO ks k vs d) a) Source #

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

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

monitoring ∷ (Lockstep (BackingStoreState ks k vs d), Lockstep (BackingStoreState ks k vs d)) → Action (Lockstep (BackingStoreState ks k vs d)) a → LookUpEither (Error (Lockstep (BackingStoreState ks k vs d)) (RealMonad IO ks k vs d)) a → PropertyProperty Source #

monitoringFailureLockstep (BackingStoreState ks k vs d) → Action (Lockstep (BackingStoreState ks k vs d)) a → LookUpError (Lockstep (BackingStoreState ks k vs d)) (RealMonad IO ks k 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 k vs d) a) Source # 
Instance details

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

Methods

showsPrecIntLockstepAction (BackingStoreState ks k vs d) a → ShowS #

showLockstepAction (BackingStoreState ks k vs d) a → String #

showList ∷ [LockstepAction (BackingStoreState ks k vs d) a] → ShowS #

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

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

Methods

(==)LockstepAction (BackingStoreState ks k vs d) a → LockstepAction (BackingStoreState ks k vs d) a → Bool #

(/=)LockstepAction (BackingStoreState ks k vs d) a → LockstepAction (BackingStoreState ks k vs d) a → Bool #

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

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

Methods

showsPrecIntBackingStoreState ks k vs d → ShowS #

showBackingStoreState ks k vs d → String #

showList ∷ [BackingStoreState ks k vs d] → ShowS #

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

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

Methods

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

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

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

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

Associated Types

type ModelOp (BackingStoreState ks k vs d) 
Instance details

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

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

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

Methods

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

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

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

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

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

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

type Error (Lockstep (BackingStoreState ks k vs d)) (RealMonad IO ks k vs d) = Void
type ModelOp (BackingStoreState ks k vs d) Source # 
Instance details

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

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

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

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

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

data Observable (BackingStoreState ks k vs d) a where

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

Constructors

RealEnv 

Fields

Instances

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

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

Associated Types

type Error (Lockstep (BackingStoreState ks k vs d)) (RealMonad IO ks k vs d) 
Instance details

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

type Error (Lockstep (BackingStoreState ks k vs d)) (RealMonad IO ks k vs d) = Void

Methods

performTypeable a ⇒ Lockstep (BackingStoreState ks k vs d) → Action (Lockstep (BackingStoreState ks k vs d)) a → LookUpRealMonad IO ks k vs d (PerformResult (Lockstep (BackingStoreState ks k vs d)) (RealMonad IO ks k vs d) a) Source #

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

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

monitoring ∷ (Lockstep (BackingStoreState ks k vs d), Lockstep (BackingStoreState ks k vs d)) → Action (Lockstep (BackingStoreState ks k vs d)) a → LookUpEither (Error (Lockstep (BackingStoreState ks k vs d)) (RealMonad IO ks k vs d)) a → PropertyProperty Source #

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

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

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

Methods

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

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

type Error (Lockstep (BackingStoreState ks k vs d)) (RealMonad IO ks k vs d) Source # 
Instance details

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

type Error (Lockstep (BackingStoreState ks k vs d)) (RealMonad IO ks k vs d) = Void

type RealMonad (m ∷ TypeType) ks k vs d = ReaderT (RealEnv m ks k 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.