cardano-diffusion:protocols-tests-lib
Safe HaskellNone
LanguageHaskell2010

Cardano.Network.Protocol.Handshake.Test

Synopsis

Documentation

newtype ArbitraryNodeToNodeVersionData Source #

Constructors

ArbitraryNodeToNodeVersionData 

Fields

Instances

Instances details
Arbitrary ArbitraryNodeToNodeVersionData Source # 
Instance details

Defined in Cardano.Network.Protocol.Handshake.Test

Show ArbitraryNodeToNodeVersionData Source # 
Instance details

Defined in Cardano.Network.Protocol.Handshake.Test

Eq ArbitraryNodeToNodeVersionData Source #

With the introduction of PeerSharing to NodeToNodeVersionData this type's Acceptable instance is no longer symmetric. Because when handshake is performed we keep only the remote's side PeerSharing information. Due to this, the ArbitraryNodeToNodeVersionData needs to have a custom Eq type that ignores this parameter. We also ignore the query field which may differ between parties.

Instance details

Defined in Cardano.Network.Protocol.Handshake.Test

Acceptable ArbitraryNodeToNodeVersionData Source # 
Instance details

Defined in Cardano.Network.Protocol.Handshake.Test

Queryable ArbitraryNodeToNodeVersionData Source # 
Instance details

Defined in Cardano.Network.Protocol.Handshake.Test

prop_peerSharing_symmetric :: (MonadAsync m, MonadCatch m) => m (Channel m ByteString, Channel m ByteString) -> Codec (Handshake NodeToNodeVersion Term) DeserialiseFailure m ByteString -> VersionDataCodec Term NodeToNodeVersion ArbitraryNodeToNodeVersionData -> Versions NodeToNodeVersion ArbitraryNodeToNodeVersionData Bool -> Versions NodeToNodeVersion ArbitraryNodeToNodeVersionData Bool -> m Property Source #

Run a query for the server's supported version.

transformNodeToNodeVersionData :: CodecCBORTerm Text NodeToNodeVersionData -> CodecCBORTerm Text ArbitraryNodeToNodeVersionData Source #