You can&#x27;t reasonably use functors of all your code dependencies (function arguments mostly).<p>I am amazed to see how the MirageOS team used this, but this method cannot be used for <i>all</i> the code.<p>&gt; As a side note, I usually see mocking being used to test badly structured code.<p>You could want to mock just because you are inspecting particular stack frames in a specific call stack, trying to reproduce a bug. It happens.