diff --git a/contracts/crowdsale/validation/TimedCrowdsale.sol b/contracts/crowdsale/validation/TimedCrowdsale.sol index abbf1d116..c73a3bb3a 100644 --- a/contracts/crowdsale/validation/TimedCrowdsale.sol +++ b/contracts/crowdsale/validation/TimedCrowdsale.sol @@ -1,5 +1,6 @@ pragma solidity ^0.4.24; +import "../../Initializable.sol"; import "../../math/SafeMath.sol"; import "../Crowdsale.sol"; @@ -8,7 +9,7 @@ import "../Crowdsale.sol"; * @title TimedCrowdsale * @dev Crowdsale accepting contributions only within a time frame. */ -contract TimedCrowdsale is Crowdsale { +contract TimedCrowdsale is Initializable, Crowdsale { using SafeMath for uint256; uint256 private _openingTime; @@ -22,12 +23,15 @@ contract TimedCrowdsale is Crowdsale { _; } + constructor(uint256 openingTime, uint256 closingTime) public { + } + /** * @dev Constructor, takes crowdsale opening and closing times. * @param openingTime Crowdsale opening time * @param closingTime Crowdsale closing time */ - constructor(uint256 openingTime, uint256 closingTime) public { + function initialize(uint256 openingTime, uint256 closingTime) public initializer { // solium-disable-next-line security/no-block-members require(openingTime >= block.timestamp); require(closingTime >= openingTime); diff --git a/contracts/mocks/TimedCrowdsaleImpl.sol b/contracts/mocks/TimedCrowdsaleImpl.sol index 296484ed1..2148bcca2 100644 --- a/contracts/mocks/TimedCrowdsaleImpl.sol +++ b/contracts/mocks/TimedCrowdsaleImpl.sol @@ -1,10 +1,11 @@ pragma solidity ^0.4.24; +import "../Initializable.sol"; import "../token/ERC20/IERC20.sol"; import "../crowdsale/validation/TimedCrowdsale.sol"; -contract TimedCrowdsaleImpl is TimedCrowdsale { +contract TimedCrowdsaleImpl is Initializable, Crowdsale, TimedCrowdsale { constructor ( uint256 openingTime, @@ -17,6 +18,8 @@ contract TimedCrowdsaleImpl is TimedCrowdsale { Crowdsale(rate, wallet, token) TimedCrowdsale(openingTime, closingTime) { + Crowdsale.initialize(rate, wallet, token); + TimedCrowdsale.initialize(openingTime, closingTime); } } diff --git a/test/crowdsale/TimedCrowdsale.test.js b/test/crowdsale/TimedCrowdsale.test.js index 4c7eff303..d61a1e885 100644 --- a/test/crowdsale/TimedCrowdsale.test.js +++ b/test/crowdsale/TimedCrowdsale.test.js @@ -12,7 +12,7 @@ require('chai') .should(); const TimedCrowdsale = artifacts.require('TimedCrowdsaleImpl'); -const SimpleToken = artifacts.require('SimpleToken'); +const SimpleToken = artifacts.require('SimpleTokenMock'); contract('TimedCrowdsale', function ([_, investor, wallet, purchaser]) { const rate = new BigNumber(1);