Skip to content

Commit d81faa9

Browse files
committed
test: fuzz proposer
1 parent 4d94daf commit d81faa9

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

packages/contracts-bedrock/test/governance/ProposalValidator.t.sol

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -759,8 +759,11 @@ contract ProposalValidator_SubmitFundingProposal_Test is ProposalValidator_Init
759759
function testFuzz_submitFundingProposal_succeeds(
760760
uint8 proposalTypeValue,
761761
uint8 optionCount,
762-
uint256 amount
762+
uint256 amount,
763+
address proposer
763764
) public {
765+
// Assume proposer is not zero address
766+
vm.assume(proposer != address(0));
764767
// Bound proposal type to only GovernanceFund (3) or CouncilBudget (4)
765768
proposalTypeValue = uint8(bound(proposalTypeValue, 3, 4));
766769
ProposalValidator.ProposalType proposalType = ProposalValidator.ProposalType(proposalTypeValue);
@@ -798,13 +801,13 @@ contract ProposalValidator_SubmitFundingProposal_Test is ProposalValidator_Init
798801

799802
// Expect ProposalSubmitted event
800803
vm.expectEmit(address(validator));
801-
emit ProposalSubmitted(expectedHash, rando, description, proposalType);
804+
emit ProposalSubmitted(expectedHash, proposer, description, proposalType);
802805

803806
// Expect ProposalVotingModuleData event
804807
vm.expectEmit(address(validator));
805808
emit ProposalVotingModuleData(expectedHash, votingModuleData);
806809

807-
vm.prank(rando);
810+
vm.prank(proposer);
808811
bytes32 proposalHash = validator.submitFundingProposal(
809812
criteriaValue,
810813
descriptions,
@@ -817,10 +820,10 @@ contract ProposalValidator_SubmitFundingProposal_Test is ProposalValidator_Init
817820
assertEq(proposalHash, expectedHash);
818821

819822
// Verify proposal data was stored correctly
820-
(address proposer, ProposalValidator.ProposalType storedProposalType, bool inVoting, uint256 approvalCount) =
823+
(address storedProposer, ProposalValidator.ProposalType storedProposalType, bool inVoting, uint256 approvalCount) =
821824
validator.getProposalData(proposalHash);
822825

823-
assertEq(proposer, rando, "Proposer should be rando");
826+
assertEq(storedProposer, proposer, "Proposer should match input");
824827
assertEq(uint8(storedProposalType), uint8(proposalType), "Proposal type should match input");
825828
assertFalse(inVoting, "Proposal should not be in voting yet");
826829
assertEq(approvalCount, 0, "Approval count should be 0");

0 commit comments

Comments
 (0)