-- | Dummy values used in tests (replacing `configuration.yaml`)
module Test.Cardano.Crypto.Dummy (
  annotatedProtocolMagicId,
  aProtocolMagic,
  protocolMagic,
  protocolMagicId,
)
where

import Cardano.Crypto (
  AProtocolMagic (..),
  ProtocolMagic,
  ProtocolMagicId (..),
  RequiresNetworkMagic (..),
 )
import Cardano.Ledger.Binary (Annotated (..), byronProtVer, serialize')
import Cardano.Prelude

aProtocolMagic :: AProtocolMagic ByteString
aProtocolMagic :: AProtocolMagic ByteString
aProtocolMagic = forall a.
Annotated ProtocolMagicId a
-> RequiresNetworkMagic -> AProtocolMagic a
AProtocolMagic Annotated ProtocolMagicId ByteString
annotatedProtocolMagicId RequiresNetworkMagic
RequiresMagic

protocolMagic :: ProtocolMagic
protocolMagic :: ProtocolMagic
protocolMagic = forall a.
Annotated ProtocolMagicId a
-> RequiresNetworkMagic -> AProtocolMagic a
AProtocolMagic (forall b a. b -> a -> Annotated b a
Annotated ProtocolMagicId
protocolMagicId ()) RequiresNetworkMagic
RequiresMagic

annotatedProtocolMagicId :: Annotated ProtocolMagicId ByteString
annotatedProtocolMagicId :: Annotated ProtocolMagicId ByteString
annotatedProtocolMagicId =
  forall b a. b -> a -> Annotated b a
Annotated ProtocolMagicId
protocolMagicId (forall a. EncCBOR a => Version -> a -> ByteString
serialize' Version
byronProtVer ProtocolMagicId
protocolMagicId)

protocolMagicId :: ProtocolMagicId
protocolMagicId :: ProtocolMagicId
protocolMagicId = Word32 -> ProtocolMagicId
ProtocolMagicId Word32
55550001