{-# LANGUAGE OverloadedStrings #-}

module Test.Cardano.Chain.MempoolPayload.Example (
  exampleMempoolPayload,
  exampleMempoolPayload1,
  exampleMempoolPayload2,
  exampleMempoolPayload3,
)
where

import Cardano.Chain.MempoolPayload (AMempoolPayload (..), MempoolPayload)
import Data.List ((!!))
import Test.Cardano.Chain.Delegation.Example as Delegation (
  exampleCertificates,
 )
import Test.Cardano.Chain.UTxO.Example (exampleTxAux)
import Test.Cardano.Chain.Update.Example as Update (
  exampleProposal,
  exampleVote,
 )

exampleMempoolPayload :: MempoolPayload
exampleMempoolPayload :: MempoolPayload
exampleMempoolPayload = forall a. ATxAux a -> AMempoolPayload a
MempoolTx TxAux
exampleTxAux

exampleMempoolPayload1 :: MempoolPayload
exampleMempoolPayload1 :: MempoolPayload
exampleMempoolPayload1 = forall a. ACertificate a -> AMempoolPayload a
MempoolDlg ([ACertificate ()]
Delegation.exampleCertificates forall a. [a] -> Int -> a
!! Int
0)

exampleMempoolPayload2 :: MempoolPayload
exampleMempoolPayload2 :: MempoolPayload
exampleMempoolPayload2 = forall a. AProposal a -> AMempoolPayload a
MempoolUpdateProposal Proposal
Update.exampleProposal

exampleMempoolPayload3 :: MempoolPayload
exampleMempoolPayload3 :: MempoolPayload
exampleMempoolPayload3 = forall a. AVote a -> AMempoolPayload a
MempoolUpdateVote Vote
Update.exampleVote