Browse Source

Using modifier to check block on delayedClaimable, tests fixed

AugustoL 9 years ago
parent
commit
85a4013f49
2 changed files with 12 additions and 5 deletions
  1. 6 3
      contracts/DelayedClaimable.sol
  2. 6 2
      test/DelayedClaimble.js

+ 6 - 3
contracts/DelayedClaimable.sol

@@ -10,13 +10,16 @@ import './Claimable.sol';
 contract DelayedClaimable is Ownable, Claimable {
   uint public claimBefore;
 
+  modifier onTime() { 
+    if (block.number < claimBefore)
+      _;
+  }
+
   function setDelay(uint _claimBefore) onlyOwner {
     claimBefore = _claimBefore;
   }
 
-  function claimOwnership() onlyPendingOwner {
-    if (block.number > claimBefore)
-        throw;
+  function claimOwnership() onlyPendingOwner onTime {
     owner = pendingOwner;
     pendingOwner = 0x0;
     claimBefore = 0;

+ 6 - 2
test/DelayedClaimble.js

@@ -22,7 +22,9 @@ contract('DelayedClaimable', function(accounts) {
       })
       .then(function(pendingOwner) {
         assert.isTrue(pendingOwner === newOwner);
-        delayedClaimable.claimOwnership({from: newOwner});
+        return delayedClaimable.claimOwnership({from: newOwner});
+      })
+      .then(function() {
         return delayedClaimable.owner();
       })
       .then(function(owner) {
@@ -46,7 +48,9 @@ contract('DelayedClaimable', function(accounts) {
       })
       .then(function(pendingOwner) {
         assert.isTrue(pendingOwner === newOwner);
-        // delayedClaimable.claimOwnership({from: newOwner}); Uncomment to break the test.
+        return delayedClaimable.claimOwnership({from: newOwner});
+      })
+      .then(function() {
         return delayedClaimable.owner();
       })
       .then(function(owner) {