Согласно документации для Ember.run это:Почему окончание вызова ember.run до завершения работы, запланированного ember.run.later, завершается?
пробегов переданную цель и метод внутри RunLoop, обеспечивая любые отсроченные действия, включая переплеты и просмотров обновлений смываются на конец.
и поэтому я ожидал, что, когда я использую его в тесте, если код тестируемой были запланировать работу для последующего использования Ember.run.later, что он должен завершить до отделки вызова Ember.run, но это, кажется, не быть так:
test('Ember.run waits for all scheduled actions to finish', function(assert) {
assert.expect(2);
var done = assert.async();
let isRunLaterThingFinished = false;
Ember.run(function() {
Ember.run.later(function() {
isRunLaterThingFinished = true;
assert.ok(true, 'the scheduled thing happened');
done();
}, 1);
});
assert.ok(isRunLaterThingFinished, "scheduled actions should have happened by the time ember run finishes");
});
какие результаты в:
Ember.run waits for all scheduled actions to finish
1. scheduled actions should have happened by the time ember run finishes
Expected: true
Result: false
может кто-нибудь объяснить, что я здесь отсутствует, и как я могу иметь мои тесты ждать все запланированные методы, чтобы закончить, прежде чем делать мой утверждать s?
Я нашел ресурс, который доказывает, что я достаточно осведомлен о моем понимании ember runloops: https://github.com/eoinkelly/ember-runloop-handbook – Bjornicus