Why is this creating and returning a promise at all though?  None of its callers ever use its return value.  Jasmine will always wait for all runs() blocks to finish, so the caller doesn't need to do anything special to ensure that the expect()s here will run before the test ends.