0
我無法接受測試使用ic-ajax提交表單的Ember CLI組件。使用ic-ajax進行Ember CLI測試
問題是驗收測試中的andThen
函數沒有等待表單提交來解決。
組件:
import Ember from 'ember';
import ajax from 'ic-ajax';
export default Ember.Component.extend({
tagName: 'form',
// ...snip...
submit(e) {
e.preventDefault();
const request = ajax({
url: "url.com"
});
// Debugging in test mode, Ember.Test.lastPromise === null here?
}
// ...snip...
});
驗收測試:
test('it surfaces errors', function(assert) {
visit('/test');
let component;
andThen(function() {
component = find('.my-form');
fillIn('input[Placeholder="Email"]', '[email protected]');
click('button[type="submit"]');
andThen(function() {
// PROBLEM: This code doesn't wait for the ic-ajax promise to resolve
assert.ok(component.hasClass('error'), "The component applied the error classname.");
});
});
});
創建ic-ajax
承諾似乎並沒有設置Ember.Test.lastPromise
,這意味着andThen
不等待提交表單返回。
我在這裏錯過了什麼嗎?