Files
openzeppelin-contracts/contracts/mocks/token/ERC20BridgeableMock.sol
Hadrien Croubois d3b7280636 ERC20Bridgable (ERC-7802) (#5735) (#5739)
Signed-off-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: ernestognw <ernestognw@gmail.com>
Co-authored-by: Arr00 <13561405+arr00@users.noreply.github.com>
2025-06-12 16:09:34 +02:00

27 lines
670 B
Solidity

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
import {ERC20, ERC20Bridgeable} from "../../token/ERC20/extensions/draft-ERC20Bridgeable.sol";
abstract contract ERC20BridgeableMock is ERC20Bridgeable {
address private _bridge;
error OnlyTokenBridge();
event OnlyTokenBridgeFnCalled(address caller);
constructor(address bridge) {
_bridge = bridge;
}
function onlyTokenBridgeFn() external onlyTokenBridge {
emit OnlyTokenBridgeFnCalled(msg.sender);
}
function _checkTokenBridge(address sender) internal view override {
if (sender != _bridge) {
revert OnlyTokenBridge();
}
}
}