尝试为我的 ember 控制器编写单元测试。它只是更改一个属性,然后打开一个引导模式。很难弄清楚如何测试模态是否实际打开。不确定这是否属于单元测试或集成测试。如果它不在我的单元测试中,那么以后似乎很难确定代码覆盖率。引导版本:3.3.1,ember-cli 版本 0.1.5,节点 0.10.33。这是我尝试无济于事的:
1.
test('loginClick() opens modal', function(){
var controller = this.subject();
$('#login-modal').on('show.bs.modal', function(){
equal(true, true, "the show.bs.modal event fired");
});
controller.send('loginClick', 'anything');
});
没有断言错误
2.
test('loginClick() opens modal', function(){
var controller = this.subject();
andThen(function(){
controller.send('loginClick', 'anything');
stop();
Ember.run.later(function(){
start();
equal($('#login-modal').hasClass('in'), true, "has the 'in' class");
}, 500);
});
});
andThen 没有定义
这是控制器:
loginClick: function(param){
this.set('provider', param);//facebook or google
$('#login-modal')
.modal();
}
关于如何测试这种东西的任何其他建议或最佳实践将不胜感激。
ps还尝试在点击之前添加这个:
$.support.transition = false;
根据某人的建议,但它不会禁用模态转换。