Le contrôleur je voudrais tester contient les éléments suivants:Comment tester la fonction qui appelle Ember.run.debounce dans 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'),
Maintenant, je voudrais écrire un test
qui affirme que filteredFoos
est mis à jour quand je mis filterText
.
Pour ce faire correctement, je vais devoir prendre en compte Ember.run.debounce
, et attendre que cela se produise avant d'effectuer mon assertion. Comment puis-je faire cela?
Honnêtement, je 'd juste rebond debounce dans le test pour le faire revenir immédiatement (synchrone) et ajouter un test pour s'assurer que le talon a été appelé. – steveax
@steveax Pourriez-vous m'en donner un exemple? – bguiz