@Test
  void shouldNormalizeChainAndFailOnInvalidTimestamp() {
    // BlockHeader is at block number 1 and timestamp 1000
    // BlockStateCall is at block number 3 and timestamp 1012
    // Should throw an exception because the timestamp is not greater than 1012
    IllegalArgumentException exception =
        assertThrows(
            IllegalArgumentException.class,
            () ->
                BlockStateCalls.fillBlockStateCalls(
                    List.of(createBlockStateCall(3L, 1012L)), mockBlockHeader));
    assertEquals(
        "Timestamp is invalid. Trying to add a call at timestamp 1012, while current timestamp is 1012.",
        exception.getMessage());
  }
Tests that the chain is normalized by adding intermediate blocks and then fails when adding the
last call due to an invalid timestamp.
ethereum/core/src/test/java/org/hyperledger/besu/ethereum/transaction/BlockStateCallsTest.java