```
It seems confusing to call GetAdjustedTime there, because no offset could have been retrieved from the network at this point. Even if connman was started, timedata needs at least 5 peer connections to calculate an offset.
Fix the confusion by replacing GetAdjustedTime with GetTime, which does not change behavior.
Also:
Replace magic number with MAX_FUTURE_BLOCK_TIME to clarify the context
Add test, which passes both on current master and this pull request
An unrelated refactoring commit, happy to drop
```
Backport of core#23636.
Depends on D12548 and D12552.