/ test / common / mock / TimeProviderMock.t.sol
TimeProviderMock.t.sol
 1  pragma solidity >=0.6.0;
 2  
 3  import "../../../contracts/deployment/ManagedContract.sol";
 4  import "../../../contracts/interfaces/TimeProvider.sol";
 5  
 6  contract TimeProviderMock is ManagedContract, TimeProvider {
 7      
 8      uint offset = 0;
 9      int fixedTime = -1;
10      
11      function getNow() override external view returns (uint) {
12  
13          return fixedTime >= 0 ? uint(fixedTime) : block.timestamp + offset;
14      }
15      
16      function setTimeOffset(uint _offset) public {
17  
18          offset = _offset;
19          fixedTime = -1;
20      }
21  
22      function setFixedTime(int _fixedTime) public {
23          
24          fixedTime = _fixedTime;
25      }
26  }