Контроллер Я хотел бы, чтобы проверить, содержит следующее:Как проверить функцию, которая вызывает Ember.run.debounce в ember-qunit?
filterText: '',
filteredFoos: (Ember.A()),
filterFoosImpl: function() {
console.log('filterFoos begin');
var filterText = this.get('filterText');
var filteredFoos = this.forEach(function(foo) {
return (foo.get(name).indexOf(filterText) >= 0);
});
this.set('filteredFoos', filteredFoos);
},
filterFoos: function() {
Ember.run.debounce(this.filterFoosImpl.bind(this), 300);
}.observes('model', 'filterText'),
Теперь я хотел бы написать test
, которая утверждает, что filteredFoos
обновляется, когда я установил filterText
.
Чтобы сделать это правильно, мне нужно будет принять во внимание Ember.run.debounce
, и дождаться этого, прежде чем выполнять свое утверждение. Как я могу это сделать?
Честно говоря, я 'd просто заглушить debounce в тесте, чтобы он немедленно возвращался (синхронно) и добавлял тест, чтобы убедиться, что заглушка была вызвана. – steveax
@steveax Не могли бы вы предоставить мне пример этого? – bguiz