@ -24,5 +24,6 @@ contract BurnableToken is BasicToken {
|
|||||||
balances[burner] = balances[burner].sub(_value);
|
balances[burner] = balances[burner].sub(_value);
|
||||||
totalSupply_ = totalSupply_.sub(_value);
|
totalSupply_ = totalSupply_.sub(_value);
|
||||||
Burn(burner, _value);
|
Burn(burner, _value);
|
||||||
|
Transfer(burner, address(0), _value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -21,11 +21,16 @@ contract('BurnableToken', function ([owner]) {
|
|||||||
|
|
||||||
it('emits a burn event', async function () {
|
it('emits a burn event', async function () {
|
||||||
const { logs } = await this.token.burn(amount, { from });
|
const { logs } = await this.token.burn(amount, { from });
|
||||||
|
const ZERO_ADDRESS = '0x0000000000000000000000000000000000000000';
|
||||||
assert.equal(logs.length, 1);
|
assert.equal(logs.length, 2);
|
||||||
assert.equal(logs[0].event, 'Burn');
|
assert.equal(logs[0].event, 'Burn');
|
||||||
assert.equal(logs[0].args.burner, owner);
|
assert.equal(logs[0].args.burner, owner);
|
||||||
assert.equal(logs[0].args.value, amount);
|
assert.equal(logs[0].args.value, amount);
|
||||||
|
|
||||||
|
assert.equal(logs[1].event, 'Transfer');
|
||||||
|
assert.equal(logs[1].args.from, owner);
|
||||||
|
assert.equal(logs[1].args.to, ZERO_ADDRESS);
|
||||||
|
assert.equal(logs[1].args.value, amount);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user