具有主干js的茉莉花测试案例

时间:2014-10-20 07:16:23

标签: jquery backbone.js jasmine

我的一位开发人员使用骨干网在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的click事件,但我想调用#listItemName的on keypress事件,并在其中创建list click事件。我只是在这里混淆,尝试了很多,但我没有找到任何结果。

删除了一些代码..

1 个答案:

答案 0 :(得分:1)

你有没有试过这样的事情:

    var e = $.Event('keypress');
    e.keyCode = 13;
    $('#listItemName').trigger(e);