Yeah, we could. Would you prefer that to this? I think when I was originally writing the code I wanted to be super strict about the behaviour in order to make implicit assertions about the flow of things and the complexity. You can see this is a copy of the test above which tests the normal case in a similar way. I will happily change it but I kind of like mocking it at this level so it is very clear what behaviour we expect IDC to do on the backed, and then run assertions on the actual public interface results.