IntersectMBO / antaeus

Cardano end-to-end testing framework for Haskell APIs
10 stars 2 forks source link

Test PlutusV3's txInfoProposalProcedures and txInfoVotingProcedures for NewCommittee #50

Open catch-21 opened 1 year ago

catch-21 commented 1 year ago

Add a new test that checks each registration certificate in PlutusV3's TxInfo.

    • [ ] Build tx with initial constitution proposal with proposal policy
      • [ ] ScriptPurpose may not be Proposing
      • [ ] Check txInfoProposalProcedures for correct ppDeposit, ppAnchor, ppReturnAddr and NewCommittee GovernanceAction
      • [ ] Check old committee credentials [ColdCommitteeCredential]
      • [ ] Check new committee Committee
        • [ ] Check each new member and epoch when each expire committeeMembers
        • [ ] Check quorum of the committee Rational

    • [ ] Submit proposal tx to allow for voting to take place

    • [ ] Build tx with a mix of Yes, No, Abstain votes as CC, DRep and SPO
      • [ ] Check ScriptPurpose is Voting
      • [ ] Check txInfoVotingProcedures for correct mapping of Voter credentials to GovernanceActionId and VotingProcedure for each voter
      • [ ] Check GovernanceActionId’s gaidTxId and gaidGovActionIx
      • [ ] Check VotingProcedure with vpAnchor is Nothing
      • [ ] Check VotingProcedure with vpAnchor is Just Anchor
      • [ ] Check VotingProcedure with VoteNo
      • [ ] Check VotingProcedure with VoteYes
      • [ ] Check VotingProcedure with Abstain

    • [ ] Submit voting tx and prove mint with onchain verification.