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 }