12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- 'use strict';
- import expectThrow from './helpers/expectThrow';
- var MintableToken = artifacts.require('../contracts/Tokens/MintableToken.sol');
- contract('Mintable', function(accounts) {
- let token;
- beforeEach(async function() {
- token = await MintableToken.new();
- });
- it('should start with a totalSupply of 0', async function() {
- let totalSupply = await token.totalSupply();
- assert.equal(totalSupply, 0);
- });
- it('should return mintingFinished false after construction', async function() {
- let mintingFinished = await token.mintingFinished();
- assert.equal(mintingFinished, false);
- });
- it('should mint a given amount of tokens to a given address', async function() {
- const result = await token.mint(accounts[0], 100);
- assert.equal(result.logs[0].event, 'Mint');
- assert.equal(result.logs[0].args.to.valueOf(), accounts[0]);
- assert.equal(result.logs[0].args.amount.valueOf(), 100);
- assert.equal(result.logs[1].event, 'Transfer');
- assert.equal(result.logs[1].args.from.valueOf(), 0x0);
- let balance0 = await token.balanceOf(accounts[0]);
- assert(balance0, 100);
- let totalSupply = await token.totalSupply();
- assert(totalSupply, 100);
- })
- it('should fail to mint after call to finishMinting', async function () {
- await token.finishMinting();
- assert.equal(await token.mintingFinished(), true);
- await expectThrow(token.mint(accounts[0], 100));
- })
- });
|