So generally all but one of the places I've used this, call.on (or whatever the function is) has been tested with calledOnce in the test previous to where the syntax is used. The place I used it probably most recently where there was 0 and 1 indexes, I've added a comment with the bits it is testing.

Having said that, I don't object to these moving to private functions as long as we all agree - I was copying/working with the existing code style and making the tests work with that. If we are going this route, then we should add this to the coding style guide.

Firing on the state maching direct isn't really an option as it will no longer just be a single bit of code under tests. For example, in the SidebarApp, you'd be needing to generate an app.data.user signout trigger which would need to assume that the app.data.user model was working.