github.com/ethereum-optimism/optimism@v1.7.2/packages/contracts-bedrock/test/invariants/InvariantTest.sol (about)

     1  // SPDX-License-Identifier: MIT
     2  pragma solidity 0.8.15;
     3  
     4  import { FFIInterface } from "test/setup/FFIInterface.sol";
     5  import { Deploy } from "scripts/Deploy.s.sol";
     6  import { Test } from "forge-std/Test.sol";
     7  
     8  /// @title InvariantTest
     9  /// @dev An extension to `Test` that sets up excluded contracts for invariant testing.
    10  contract InvariantTest is Test {
    11      FFIInterface constant ffi = FFIInterface(address(uint160(uint256(keccak256(abi.encode("optimism.ffi"))))));
    12      Deploy internal constant deploy = Deploy(address(uint160(uint256(keccak256(abi.encode("optimism.deploy"))))));
    13  
    14      function setUp() public virtual {
    15          excludeContract(address(ffi));
    16          excludeContract(address(deploy));
    17      }
    18  }