1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- // SPDX-License-Identifier: MIT
- pragma solidity ^0.8.0;
- import "../governance/extensions/GovernorTimelockCompound.sol";
- import "../governance/extensions/GovernorSettings.sol";
- import "../governance/extensions/GovernorCountingSimple.sol";
- import "../governance/extensions/GovernorVotesQuorumFraction.sol";
- contract GovernorTimelockCompoundMock is
- GovernorSettings,
- GovernorTimelockCompound,
- GovernorVotesQuorumFraction,
- GovernorCountingSimple
- {
- constructor(
- string memory name_,
- IVotes token_,
- uint256 votingDelay_,
- uint256 votingPeriod_,
- ICompoundTimelock timelock_,
- uint256 quorumNumerator_
- )
- Governor(name_)
- GovernorTimelockCompound(timelock_)
- GovernorSettings(votingDelay_, votingPeriod_, 0)
- GovernorVotes(token_)
- GovernorVotesQuorumFraction(quorumNumerator_)
- {}
- function supportsInterface(bytes4 interfaceId)
- public
- view
- virtual
- override(Governor, GovernorTimelockCompound)
- returns (bool)
- {
- return super.supportsInterface(interfaceId);
- }
- function quorum(uint256 blockNumber)
- public
- view
- override(IGovernor, GovernorVotesQuorumFraction)
- returns (uint256)
- {
- return super.quorum(blockNumber);
- }
- function cancel(
- address[] memory targets,
- uint256[] memory values,
- bytes[] memory calldatas,
- bytes32 salt
- ) public returns (uint256 proposalId) {
- return _cancel(targets, values, calldatas, salt);
- }
- /**
- * Overriding nightmare
- */
- function state(uint256 proposalId)
- public
- view
- virtual
- override(Governor, GovernorTimelockCompound)
- returns (ProposalState)
- {
- return super.state(proposalId);
- }
- function proposalThreshold() public view override(Governor, GovernorSettings) returns (uint256) {
- return super.proposalThreshold();
- }
- function _execute(
- uint256 proposalId,
- address[] memory targets,
- uint256[] memory values,
- bytes[] memory calldatas,
- bytes32 descriptionHash
- ) internal virtual override(Governor, GovernorTimelockCompound) {
- super._execute(proposalId, targets, values, calldatas, descriptionHash);
- }
- function _cancel(
- address[] memory targets,
- uint256[] memory values,
- bytes[] memory calldatas,
- bytes32 salt
- ) internal virtual override(Governor, GovernorTimelockCompound) returns (uint256 proposalId) {
- return super._cancel(targets, values, calldatas, salt);
- }
- function _executor() internal view virtual override(Governor, GovernorTimelockCompound) returns (address) {
- return super._executor();
- }
- }
|