|
@@ -1,40 +0,0 @@
|
|
|
-const { expectThrow } = require('../helpers/expectThrow');
|
|
|
-
|
|
|
-const CanReclaimToken = artifacts.require('CanReclaimToken');
|
|
|
-const ERC20Mock = artifacts.require('ERC20Mock');
|
|
|
-
|
|
|
-const BigNumber = web3.BigNumber;
|
|
|
-
|
|
|
-require('chai')
|
|
|
- .use(require('chai-bignumber')(BigNumber))
|
|
|
- .should();
|
|
|
-
|
|
|
-contract('CanReclaimToken', function ([_, owner, anyone]) {
|
|
|
- let token = null;
|
|
|
- let canReclaimToken = null;
|
|
|
-
|
|
|
- beforeEach(async function () {
|
|
|
- // Create contract and token
|
|
|
- token = await ERC20Mock.new(owner, 100, { from: owner });
|
|
|
- canReclaimToken = await CanReclaimToken.new({ from: owner });
|
|
|
-
|
|
|
- // Force token into contract
|
|
|
- await token.transfer(canReclaimToken.address, 10, { from: owner });
|
|
|
- (await token.balanceOf(canReclaimToken.address)).should.be.bignumber.equal(10);
|
|
|
- });
|
|
|
-
|
|
|
- it('should allow owner to reclaim tokens', async function () {
|
|
|
- const ownerStartBalance = await token.balanceOf(owner);
|
|
|
- await canReclaimToken.reclaimToken(token.address, { from: owner });
|
|
|
- const ownerFinalBalance = await token.balanceOf(owner);
|
|
|
- ownerFinalBalance.sub(ownerStartBalance).should.be.bignumber.equal(10);
|
|
|
-
|
|
|
- (await token.balanceOf(canReclaimToken.address)).should.be.bignumber.equal(0);
|
|
|
- });
|
|
|
-
|
|
|
- it('should allow only owner to reclaim tokens', async function () {
|
|
|
- await expectThrow(
|
|
|
- canReclaimToken.reclaimToken(token.address, { from: anyone })
|
|
|
- );
|
|
|
- });
|
|
|
-});
|