Safe Haskell | None |
---|---|
Language | Haskell2010 |
Test.Ouroboros.Network.PeerSelection.RootPeersDNS
Synopsis
- tests :: TestTree
- mockDNSActions :: forall exception (m :: Type -> Type). (MonadDelay m, MonadTimer m) => StrictTVar m (Map Domain [(IP, TTL)]) -> StrictTVar m (Script DNSTimeout) -> StrictTVar m (Script DNSLookupDelay) -> DNSActions () exception m
- data MockRoots = MockRoots {
- mockLocalRootPeers :: [(HotValency, WarmValency, Map RelayAccessPoint (LocalRootConfig ()))]
- mockLocalRootPeersDNSMap :: Script (Map Domain [(IP, TTL)])
- mockPublicRootPeers :: Map RelayAccessPoint PeerAdvertise
- mockPublicRootPeersDNSMap :: Script (Map Domain [(IP, TTL)])
- newtype DNSTimeout = DNSTimeout {}
- newtype DNSLookupDelay = DNSLookupDelay {}
- data DelayAndTimeoutScripts = DelayAndTimeoutScripts (Script DNSLookupDelay) (Script DNSTimeout)
Documentation
mockDNSActions :: forall exception (m :: Type -> Type). (MonadDelay m, MonadTimer m) => StrictTVar m (Map Domain [(IP, TTL)]) -> StrictTVar m (Script DNSTimeout) -> StrictTVar m (Script DNSLookupDelay) -> DNSActions () exception m Source #
Mock DNSActions data structure for testing purposes. Adds DNS Lookup function for IOSim with different timeout and lookup delays for every attempt.
Constructors
MockRoots | |
Fields
|
newtype DNSTimeout Source #
Constructors
DNSTimeout | |
Fields |
Instances
Arbitrary DNSTimeout Source # | |
Show DNSTimeout Source # | |
Defined in Test.Ouroboros.Network.PeerSelection.RootPeersDNS Methods showsPrec :: Int -> DNSTimeout -> ShowS # show :: DNSTimeout -> String # showList :: [DNSTimeout] -> ShowS # |
newtype DNSLookupDelay Source #
Constructors
DNSLookupDelay | |
Fields |
Instances
Arbitrary DNSLookupDelay Source # | |
Show DNSLookupDelay Source # | |
Defined in Test.Ouroboros.Network.PeerSelection.RootPeersDNS Methods showsPrec :: Int -> DNSLookupDelay -> ShowS # show :: DNSLookupDelay -> String # showList :: [DNSLookupDelay] -> ShowS # |
data DelayAndTimeoutScripts Source #
Delay and timeout script which make sure that eventually the dns lookup will not timeout.
Constructors
DelayAndTimeoutScripts (Script DNSLookupDelay) (Script DNSTimeout) |
Instances
Arbitrary DelayAndTimeoutScripts Source # | |
Defined in Test.Ouroboros.Network.PeerSelection.RootPeersDNS Methods arbitrary :: Gen DelayAndTimeoutScripts # shrink :: DelayAndTimeoutScripts -> [DelayAndTimeoutScripts] # | |
Show DelayAndTimeoutScripts Source # | |
Defined in Test.Ouroboros.Network.PeerSelection.RootPeersDNS Methods showsPrec :: Int -> DelayAndTimeoutScripts -> ShowS # show :: DelayAndTimeoutScripts -> String # showList :: [DelayAndTimeoutScripts] -> ShowS # |