GovernorVotesSuperQuorumFractionMock.sol 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. // SPDX-License-Identifier: MIT
  2. pragma solidity ^0.8.20;
  3. import {Governor} from "../../governance/Governor.sol";
  4. import {GovernorSettings} from "../../governance/extensions/GovernorSettings.sol";
  5. import {GovernorSuperQuorum} from "../../governance/extensions/GovernorSuperQuorum.sol";
  6. import {GovernorCountingSimple} from "../../governance/extensions/GovernorCountingSimple.sol";
  7. import {GovernorVotesSuperQuorumFraction} from "../../governance/extensions/GovernorVotesSuperQuorumFraction.sol";
  8. abstract contract GovernorVotesSuperQuorumFractionMock is
  9. GovernorSettings,
  10. GovernorVotesSuperQuorumFraction,
  11. GovernorCountingSimple
  12. {
  13. function proposalThreshold() public view override(Governor, GovernorSettings) returns (uint256) {
  14. return super.proposalThreshold();
  15. }
  16. function proposalVotes(
  17. uint256 proposalId
  18. )
  19. public
  20. view
  21. virtual
  22. override(GovernorCountingSimple, GovernorSuperQuorum)
  23. returns (uint256 againstVotes, uint256 forVotes, uint256 abstainVotes)
  24. {
  25. return super.proposalVotes(proposalId);
  26. }
  27. function state(
  28. uint256 proposalId
  29. ) public view override(Governor, GovernorVotesSuperQuorumFraction) returns (ProposalState) {
  30. return super.state(proposalId);
  31. }
  32. }