Generally, stubbing/mocking the object-under-test is a code smell.  (It's best to do that on a collaborator).  But the only solution that comes to mind (pulling `invoke` out into its own object) wouldn't actually improve the design of the system (to me, anyway).

Anyone have a better idea?