私の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;
誰かの提案によるが、モーダル遷移を無効にするわけではありません。