1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- const { BN, shouldFail } = require('openzeppelin-test-helpers');
- const PausableCrowdsale = artifacts.require('PausableCrowdsaleImpl');
- const SimpleToken = artifacts.require('SimpleToken');
- contract('PausableCrowdsale', function ([_, pauser, wallet, other]) {
- const rate = new BN(1);
- const value = new BN(1);
- beforeEach(async function () {
- const from = pauser;
- this.token = await SimpleToken.new({ from });
- this.crowdsale = await PausableCrowdsale.new(rate, wallet, this.token.address, { from });
- await this.token.transfer(this.crowdsale.address, value.muln(2), { from });
- });
- it('purchases work', async function () {
- await this.crowdsale.sendTransaction({ from: other, value });
- await this.crowdsale.buyTokens(other, { from: other, value });
- });
- context('after pause', function () {
- beforeEach(async function () {
- await this.crowdsale.pause({ from: pauser });
- });
- it('purchases do not work', async function () {
- await shouldFail.reverting(this.crowdsale.sendTransaction({ from: other, value }));
- await shouldFail.reverting(this.crowdsale.buyTokens(other, { from: other, value }));
- });
- context('after unpause', function () {
- beforeEach(async function () {
- await this.crowdsale.unpause({ from: pauser });
- });
- it('purchases work', async function () {
- await this.crowdsale.sendTransaction({ from: other, value });
- await this.crowdsale.buyTokens(other, { from: other, value });
- });
- });
- });
- });
|