我的一位开发人员已经使用backbone在js文件中编写了代码。
define([],function(){
var sampleFunction = Backbone.view.extend({
initialize:function(){
$( 'body' ).on( 'keypress', '#listItemName', function ( ev ) {
if ( ev.keyCode === 13 ) {
$( '#createList' ).click();
return false;
}
} );
},
events:{
"click #createList": "handleCreateNewList",
},
}),
}
我必须为此按键功能编写一个测试用例......
我已经写了我的规范
describe("",function(){
beforeEach(function({
});
afterEach(function(){
});
it("Binding create list event to enter button",function(){
spyOn( _this.leftNavView, "handleCreateNewList");
_this.leftNavView.delegateEvents();
var e = jQuery.Event("Keypress");
e.keyCode = 13;
if(e.keyCode == 13){
$("#createList").trigger('click');
}
expect( _this.leftNavView.handleCreateNewList ).toHaveBeenCalled();
});
}),
我的规范仅调用 createlist 的单击事件,但我想调用 #listItemName 的按键事件以及在创建列表中的单击事件。我只是在这里感到困惑,尝试了很多,但没有找到任何结果。
删除了一些代码..
最佳答案
你尝试过这样的事情吗:
var e = $.Event('keypress');
e.keyCode = 13;
$('#listItemName').trigger(e);
关于jquery - 带有主干js的 Jasmine 测试用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26460280/