// SPDX-License-Identifier: MIT pragma solidity ^0.6.12; pragma experimental ABIEncoderV2; import { ProposalUtils } from "./ProposalUtils.sol"; import { Proposal, IGovernance } from "./interfaces/IGovernance.sol"; import { TornadoStakingRewards } from "@root/TornadoStakingRewards.sol"; import { RestoreRewardsProposal } from "@root/Proposal.sol"; import { Test } from "@forge-std/Test.sol"; contract MockProposal is Test, ProposalUtils { modifier executeCurrentProposalBefore() { createAndExecuteProposal(); _; } function createAndExecuteProposal() public { TornadoStakingRewards governanceStakingImplementation = new TornadoStakingRewards(_governanceAddress, _tokenAddress, _relayerRegistryAddress); RestoreRewardsProposal proposal = new RestoreRewardsProposal(address(governanceStakingImplementation)); proposeAndExecute(address(proposal)); } }