OK, I see your point. While I was on plane, I was thinking how we can improve and sort of make our tests with promises more 'flat'. The first idea that comes in mind is to use mocked Promise + JS generators syntax. Moreover I've noticed that we have MochaTask that already designed to support such 'yield'y syntax, but it's outdated as JS generator syntax has changed since that time. 

It would be great if you can look into draft that I've pushed to this PR. The basic idea behind MockPromise is the same as for Angular promise-based unit test - to flush all pending promises and only then use asserts without any async\callback burden.

What are your thoughts on that?