TimeProviderMock.sol
1 pragma solidity >=0.6.0; 2 3 import "../deployment/ManagedContract.sol"; 4 import "../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 return fixedTime >= 0 ? uint(fixedTime) : block.timestamp + offset; 13 } 14 15 function setTimeOffset(uint _offset) public { 16 offset = _offset; 17 fixedTime = -1; 18 } 19 20 function setFixedTime(int _fixedTime) public { 21 fixedTime = _fixedTime; 22 } 23 }