const { expectThrow } = require('../../helpers/expectThrow'); const { EVMRevert } = require('../../helpers/EVMRevert'); require('chai') .should(); const SafeERC20Helper = artifacts.require('SafeERC20Helper'); contract('SafeERC20', function () { beforeEach(async function () { this.helper = await SafeERC20Helper.new(); }); it('should throw on failed transfer', async function () { await expectThrow(this.helper.doFailingTransfer(), EVMRevert); }); it('should throw on failed transferFrom', async function () { await expectThrow(this.helper.doFailingTransferFrom(), EVMRevert); }); it('should throw on failed approve', async function () { await expectThrow(this.helper.doFailingApprove(), EVMRevert); }); it('should not throw on succeeding transfer', async function () { await this.helper.doSucceedingTransfer(); }); it('should not throw on succeeding transferFrom', async function () { await this.helper.doSucceedingTransferFrom(); }); it('should not throw on succeeding approve', async function () { await this.helper.doSucceedingApprove(); }); });