We’ve build a spy class that we can inject in place of our RealTimeConnection class. Now we need to finish implementing our UI-to-network connection logic. To do that, we decide to modify our RealTimeConnection’s connect() method to make the completion callback optional. That opens a surprising can of worms.