Files
openzeppelin-contracts/test/helpers/SafeERC20Helper.sol
Francisco Giordano c7636bdc4c add safe ERC20 helpers
2017-08-28 17:32:18 -03:00

49 lines
924 B
Solidity

pragma solidity ^0.4.11;
import '../../contracts/token/ERC20.sol';
import '../../contracts/token/SafeERC20.sol';
contract ERC20FailingMock is ERC20 {
function transfer(address, uint256) returns (bool) {
return false;
}
function transferFrom(address, address, uint256) returns (bool) {
return false;
}
function approve(address, uint256) returns (bool) {
return false;
}
function balanceOf(address) constant returns (uint256) {
return 0;
}
function allowance(address, address) constant returns (uint256) {
return 0;
}
}
contract SafeERC20Helper {
using SafeERC20 for ERC20;
ERC20 token;
function SafeERC20Helper() {
token = new ERC20FailingMock();
}
function doFailingTransfer() {
token.safeTransfer(0, 0);
}
function doFailingTransferFrom() {
token.safeTransferFrom(0, 0, 0);
}
function doFailingApprove() {
token.safeApprove(0, 0);
}
}