diff --git a/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol b/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol index 423175ba..0676845a 100644 --- a/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol +++ b/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol @@ -9,14 +9,21 @@ import "../precompiles/ArbSys.sol"; contract PendingBlkTimeAndNrAdvanceCheck { uint256 immutable deployedAt; uint256 immutable deployedAtBlock; + ArbSys constant ARB_SYS = ArbSys(address(100)); constructor() { deployedAt = block.timestamp; - deployedAtBlock = ArbSys(address(100)).arbBlockNumber(); + deployedAtBlock = ARB_SYS.arbBlockNumber(); } function isAdvancing() external { require(block.timestamp > deployedAt, "Time didn't advance"); - require(ArbSys(address(100)).arbBlockNumber() > deployedAtBlock, "Block didn't advance"); + require(ARB_SYS.arbBlockNumber() > deployedAtBlock, "Block didn't advance"); + } + + function checkArbBlockHashReturnsLatest(bytes32 expected) external { + bytes32 gotBlockHash = ARB_SYS.arbBlockHash(ARB_SYS.arbBlockNumber() - 1); + require(gotBlockHash != bytes32(0), "ZERO_BLOCK_HASH"); + require(gotBlockHash == expected, "WRONG_BLOCK_HASH"); } }