consensus-test
Safe HaskellSafe-Inferred
LanguageHaskell2010

Test.Consensus.PeerSimulator.BlockFetch

Description

Functions that call to the BlockFetch API to start clients and servers

Documentation

runBlockFetchClient Source #

Arguments

∷ (IOLike m, MonadTime m, MonadTimer m, HasHeader blk, HasHeader (Header blk), ShowProxy blk) 
Tracer m (TraceEvent blk) 
PeerId 
BlockFetchTimeout 
StateViewTracers blk m 
FetchClientRegistry PeerId (Header blk) blk m 
ControlMessageSTM m 
Channel m (AnyMessage (BlockFetch blk (Point blk)))

Send and receive message via the given Channel.

→ m () 

runBlockFetchServer Source #

Arguments

∷ (IOLike m, ShowProxy blk) 
Tracer m (TraceEvent blk) 
PeerId 
StateViewTracers blk m 
BlockFetchServer blk (Point blk) m () 
Channel m (AnyMessage (BlockFetch blk (Point blk)))

Send and receive message via the given Channel.

→ m () 

startBlockFetchLogic Source #

Arguments

∷ ∀ m. (IOLike m, MonadTimer m) 
Bool

Whether to enable chain selection starvation

ResourceRegistry m 
Tracer m (TraceEvent TestBlock) 
ChainDB m TestBlock 
FetchClientRegistry PeerId (Header TestBlock) TestBlock m 
ChainSyncClientHandleCollection PeerId m TestBlock 
→ m () 

startKeepAliveThread ∷ ∀ m peer blk. (Ord peer, IOLike m) ⇒ ResourceRegistry m → FetchClientRegistry peer (Header blk) blk m → peer → m () Source #