Commit 4fa3ede7 authored by AgusDuha's avatar AgusDuha Committed by GitHub

test: fix superc20 interface test (#125) (#12825)

parent 6fbf9db6
...@@ -7,10 +7,11 @@ import { EIP1967Helper } from "test/mocks/EIP1967Helper.sol"; ...@@ -7,10 +7,11 @@ import { EIP1967Helper } from "test/mocks/EIP1967Helper.sol";
// Libraries // Libraries
import { Predeploys } from "src/libraries/Predeploys.sol"; import { Predeploys } from "src/libraries/Predeploys.sol";
import { IERC20Solady as IERC20 } from "src/vendor/interfaces/IERC20Solady.sol";
import { Initializable } from "@openzeppelin/contracts-v5/proxy/utils/Initializable.sol"; import { Initializable } from "@openzeppelin/contracts-v5/proxy/utils/Initializable.sol";
import { IERC165 } from "@openzeppelin/contracts-v5/utils/introspection/IERC165.sol"; import { IERC165 } from "@openzeppelin/contracts-v5/utils/introspection/IERC165.sol";
import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
import { IERC7802 } from "src/L2/interfaces/IERC7802.sol";
import { IBeacon } from "@openzeppelin/contracts-v5/proxy/beacon/IBeacon.sol"; import { IBeacon } from "@openzeppelin/contracts-v5/proxy/beacon/IBeacon.sol";
import { BeaconProxy } from "@openzeppelin/contracts-v5/proxy/beacon/BeaconProxy.sol"; import { BeaconProxy } from "@openzeppelin/contracts-v5/proxy/beacon/BeaconProxy.sol";
import { Unauthorized } from "src/libraries/errors/CommonErrors.sol"; import { Unauthorized } from "src/libraries/errors/CommonErrors.sol";
...@@ -248,6 +249,8 @@ contract OptimismSuperchainERC20Test is Test { ...@@ -248,6 +249,8 @@ contract OptimismSuperchainERC20Test is Test {
/// @notice Tests that the `supportsInterface` function returns true for the `ISuperchainERC20` interface. /// @notice Tests that the `supportsInterface` function returns true for the `ISuperchainERC20` interface.
function test_supportInterface_succeeds() public view { function test_supportInterface_succeeds() public view {
assertTrue(optimismSuperchainERC20.supportsInterface(type(IERC165).interfaceId)); assertTrue(optimismSuperchainERC20.supportsInterface(type(IERC165).interfaceId));
assertTrue(optimismSuperchainERC20.supportsInterface(type(IERC20).interfaceId));
assertTrue(optimismSuperchainERC20.supportsInterface(type(IERC7802).interfaceId));
assertTrue(optimismSuperchainERC20.supportsInterface(type(IOptimismSuperchainERC20).interfaceId)); assertTrue(optimismSuperchainERC20.supportsInterface(type(IOptimismSuperchainERC20).interfaceId));
} }
...@@ -255,6 +258,8 @@ contract OptimismSuperchainERC20Test is Test { ...@@ -255,6 +258,8 @@ contract OptimismSuperchainERC20Test is Test {
/// `ISuperchainERC20` one. /// `ISuperchainERC20` one.
function testFuzz_supportInterface_returnFalse(bytes4 _interfaceId) public view { function testFuzz_supportInterface_returnFalse(bytes4 _interfaceId) public view {
vm.assume(_interfaceId != type(IERC165).interfaceId); vm.assume(_interfaceId != type(IERC165).interfaceId);
vm.assume(_interfaceId != type(IERC20).interfaceId);
vm.assume(_interfaceId != type(IERC7802).interfaceId);
vm.assume(_interfaceId != type(IOptimismSuperchainERC20).interfaceId); vm.assume(_interfaceId != type(IOptimismSuperchainERC20).interfaceId);
assertFalse(optimismSuperchainERC20.supportsInterface(_interfaceId)); assertFalse(optimismSuperchainERC20.supportsInterface(_interfaceId));
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment