It could have to do with the Ember runloop being disabled in test mode. Have you checked out ic-ajax
? https://github.com/instructure/ic-ajax It gives you promise-style jQuery ajax requests in a form that Ember likes, even in testing. I brought it in to solve my Ember runloop issues in testing, and have had great results so far.
Alternatively, you could try wrapping your teacher.then(..
in an Ember.run
.