如何在jasmine测试用例中模拟$(element).show和ko.mapping.fromJS
How to mock $(element).show and ko.mapping.fromJS in jasmine test case?
这是我的代码:
TestViewModel.prototype.edit = function(pId, pData) {
self.modalId = '#header';
$(self.modalId).modal('show'); //error
self.id(ko.mapping.fromJS(pData).id()); //how to mock this ?
}
这是Jasmine测试用例:
it("calling edit method", function() {
var modalId = $("#cc-accessControlUserModal");
var EditData = {id:"i10060"};
spyOn($.fn, 'modal');
self.TestViewModel.edit("i10060",EditData);
});
然而,这将给我:
错误:modal()方法不存在
所以,问题是:如何在Jasmine测试用例中模拟$(element).show
和ko.mapping.fromJS
?
这是一个老问题,但我最近遇到了同样的问题。如果您正在使用karma运行jasmine脚本,请将引导程序库添加到文件下的karma.config文件中。
files: [
'node_modules/es6-shim/es6-shim.js',
'node_modules/reflect-metadata/Reflect.js',
...
'node_modules/jquery/dist/jquery.min.js',
'node_modules/jquery-mask-plugin/dist/jquery.mask.js',
'node_modules/jquery-ui/ui/core.js',
'node_modules/jquery-ui/ui/datepicker.js',
//Append dependencies to this list
'node_modules/bootstrap/js/modal.js',
...
]
在我的例子中,由于我不需要整个引导程序库,所以我只包含了模式文件。
这是karma配置文档:karma doc
相关文章:
- electronic BrowserWindow的最小高度和宽度在hide()show()方法之后不起作用
- jQuery:.click(function(){(element),collapse('show',f
- delete在Object上效率低下,但在DOM Element's的数据属性,与null out相比
- Bootstrap 3 Datepicker v4:dp.show和dp.change事件在Datepicker内联时不
- Javascript - element.childNodes does not see an append.newch
- 使用element简化onclick函数
- JQuery hide()在show()之后不起作用,反之亦然
- 任何将(SSH)终端嵌入到一些HTML5表示系统中的想法(例如,show.js)
- 使用angularjs ng Show/ng hide显示和隐藏不同的内容
- AngularJS,angular.element($0).scope()揭示了每个控制器的函数
- 如何使用element.myobj.prop等具有对象属性的元素
- 我需要NG-IF/NG-SWITCH还是NG-SHOW&NG-HIDE
- element.dataset in Internet Explorer
- Protractor:element.getText()返回一个对象,而不是String
- 如何在AngularJS视图中使用promise(ng-show)
- jQuery show element with display:none !important
- 将 show/hide element jQuery 代码转换为 JavaScript
- 如何在jasmine测试用例中模拟$(element).show和ko.mapping.fromJS
- $element.show()在IE中不起作用
- Jquery $(element).hide().blur().show()显示所有元素