util/time.* uses multiple clocks depending on circumstances like if mock time is set or if templated
GetTime<>() is called. This can result in unexpected behavior where registerProof() uses a different
clock than when SetMockTime(GetTime()...) is called in unit tests.
This patch makes this specific unit test predictable by setting mock time before any proofs are registered.
The root cause may be fixed with additional backports to util/time.* that make the clock selection more
consistent (see backport core#24871 and core#21110).