// SPDX-License-Identifier: MIT pragma solidity ^0.8.19; import { ProposalUtils } from "./utils/ProposalUtils.sol"; import { ExampleProposal } from "@root/ExampleProposal.sol"; import { console2 } from "@forge-std/console2.sol"; contract TestExampleProposal is ProposalUtils { modifier executeCurrentProposalBefore() { createAndExecuteProposal(); _; } function createAndExecuteProposal() public { address proposalAddress = address(new ExampleProposal()); /* your proposal initialization */ proposeAndExecute(proposalAddress); } /* your tests */ function testProposal() public executeCurrentProposalBefore { } }