I hate asking the question "is this function called from different places, or was it extracted only for aesthetic reasons?".
You're coding for a future that might not exist. You might be coding for the wrong future and you painted yourself into a corner.
Been there, done that.
Maybe there's a way where I can code for every possible future with minimal effort. I'm talking about a pattern that isn't a form of premature optimization. Just a rule.
Your way of coding is, coding for the most probable future. Distinctly different of coding for every possible future.
> Ah, the good old premature abstraction.
The function will get called from different places. Once from its caller, and a second time from its unit test.
So you entire premise is wrong.