ERC721ReceiverMock.sol 558 B

12345678910111213141516171819202122
  1. pragma solidity ^0.4.18;
  2. import "../token/ERC721/ERC721Receiver.sol";
  3. contract ERC721ReceiverMock is ERC721Receiver {
  4. bytes4 retval;
  5. bool reverts;
  6. event Received(address _address, uint256 _tokenId, bytes _data, uint256 _gas);
  7. function ERC721ReceiverMock(bytes4 _retval, bool _reverts) public {
  8. retval = _retval;
  9. reverts = _reverts;
  10. }
  11. function onERC721Received(address _address, uint256 _tokenId, bytes _data) public returns(bytes4) {
  12. require(!reverts);
  13. Received(_address, _tokenId, _data, msg.gas);
  14. return retval;
  15. }
  16. }