Переглянути джерело

sanity check for RefundableCrowdsale: goal > 0

Jakub Wojciechowski 8 роки тому
батько
коміт
950b6a5e56

+ 1 - 0
contracts/crowdsale/RefundableCrowdsale.sol

@@ -22,6 +22,7 @@ contract RefundableCrowdsale is FinalizableCrowdsale {
   RefundVault public vault;
 
   function RefundableCrowdsale(uint256 _goal) {
+    require(_goal > 0);
     vault = new RefundVault(wallet);
     goal = _goal;
   }

+ 9 - 0
test/RefundableCrowdsale.js

@@ -17,6 +17,15 @@ contract('RefundableCrowdsale', function ([_, owner, wallet, investor]) {
   const goal = ether(800)
   const lessThanGoal = ether(750)
 
+  describe('creating a valid crowdsale', function () {
+
+    it('should fail with zero goal', async function () {
+      await RefundableCrowdsale.new(this.startBlock, this.endBlock, rate, wallet, 0, {from: owner}).should.be.rejectedWith(EVMThrow);
+    })
+
+  });
+
+
   beforeEach(async function () {
     this.startBlock = web3.eth.blockNumber + 10
     this.endBlock =   web3.eth.blockNumber + 20