Organize test files following contracts folders structure
This commit is contained in:
38
test/token/BurnableToken.test.js
Normal file
38
test/token/BurnableToken.test.js
Normal file
@ -0,0 +1,38 @@
|
||||
|
||||
const EVMRevert = require('../helpers/EVMRevert.js');
|
||||
const BurnableTokenMock = artifacts.require('mocks/BurnableTokenMock.sol');
|
||||
const BigNumber = web3.BigNumber;
|
||||
|
||||
require('chai')
|
||||
.use(require('chai-as-promised'))
|
||||
.use(require('chai-bignumber')(BigNumber))
|
||||
.should();
|
||||
|
||||
const expect = require('chai').expect;
|
||||
|
||||
contract('BurnableToken', function (accounts) {
|
||||
let token;
|
||||
let expectedTokenSupply = new BigNumber(999);
|
||||
|
||||
beforeEach(async function () {
|
||||
token = await BurnableTokenMock.new(accounts[0], 1000);
|
||||
});
|
||||
|
||||
it('owner should be able to burn tokens', async function () {
|
||||
const { logs } = await token.burn(1, { from: accounts[0] });
|
||||
|
||||
const balance = await token.balanceOf(accounts[0]);
|
||||
balance.should.be.bignumber.equal(expectedTokenSupply);
|
||||
|
||||
const totalSupply = await token.totalSupply();
|
||||
totalSupply.should.be.bignumber.equal(expectedTokenSupply);
|
||||
|
||||
const event = logs.find(e => e.event === 'Burn');
|
||||
expect(event).to.exist;
|
||||
});
|
||||
|
||||
it('cannot burn more tokens than your balance', async function () {
|
||||
await token.burn(2000, { from: accounts[0] })
|
||||
.should.be.rejectedWith(EVMRevert);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user