ember-simple-auth,接受测试和等待异步行动



在接受测试中挣扎。从基本登录测试开始:

import { test } from 'qunit';
import moduleForAcceptance from 'static/tests/helpers/module-for-acceptance';
moduleForAcceptance('Acceptance | authentication');
test('login', function(assert) {
  visit('/');
  click('.nav-bar__login-link');
  andThen(function() {
    assert.notOk(find('.login-form__submit-button').attr('disabled'));
  });
  fillIn('.login-form__email-block input', "ruz@email.com");
  fillIn('.login-form__password-block input', "qwe");
  click('.login-form__submit-button');
  andThen(function() {
    console.log("ftw");
    assert.equal(find('.nav-bar__profile-link').text(), "some");
  });
});

问题是在身份验证完成之前,请调用和回调。这是JQuery Ajax请求,此后有一些承诺。从我可以看到Ember等待Ajax查询完成的情况下,但不等待应许得到解决/拒绝的承诺。这个测试应该开箱即用吗?我必须写一个自定义服务员吗?

听起来您的承诺可能不是设置吗?但是不,您应该能够使用验收测试帮助者编写测试,而不必担心异步呼叫定居(或承诺解决(

最新更新