Closing time must be strictly after opening time. (#1440)

(cherry picked from commit 1c5f16ae26)
pull/1474/head
Nicolás Venturo 6 years ago committed by Leo Arias
parent 5ee55c4af3
commit 6e055019d4
  1. 2
      contracts/crowdsale/validation/TimedCrowdsale.sol
  2. 10
      test/crowdsale/TimedCrowdsale.test.js

@ -29,7 +29,7 @@ contract TimedCrowdsale is Crowdsale {
constructor(uint256 openingTime, uint256 closingTime) internal {
// solium-disable-next-line security/no-block-members
require(openingTime >= block.timestamp);
require(closingTime >= openingTime);
require(closingTime > openingTime);
_openingTime = openingTime;
_closingTime = closingTime;

@ -29,18 +29,24 @@ contract('TimedCrowdsale', function ([_, investor, wallet, purchaser]) {
this.token = await SimpleToken.new();
});
it('rejects an opening time in the past', async function () {
it('reverts if the opening time is in the past', async function () {
await shouldFail.reverting(TimedCrowdsaleImpl.new(
(await time.latest()) - time.duration.days(1), this.closingTime, rate, wallet, this.token.address
));
});
it('rejects a closing time before the opening time', async function () {
it('reverts if the closing time is before the opening time', async function () {
await shouldFail.reverting(TimedCrowdsaleImpl.new(
this.openingTime, this.openingTime - time.duration.seconds(1), rate, wallet, this.token.address
));
});
it('reverts if the closing time equals the opening time', async function () {
await shouldFail.reverting(TimedCrowdsaleImpl.new(
this.openingTime, this.openingTime, rate, wallet, this.token.address
));
});
context('with crowdsale', function () {
beforeEach(async function () {
this.crowdsale = await TimedCrowdsaleImpl.new(

Loading…
Cancel
Save