gpt4 book ai didi

javascript - 使用 Jasmine 在 Angular 中测试错误回调

转载 作者:行者123 更新时间:2023-12-03 12:43:06 26 4
gpt4 key购买 nike

如何在 Angular Controller 中测试错误回调,如下所示:

controller.js

  Note
.query()
.$promise
.then(
function( notes ) {
// success
},
function() {
// error
}
);

在我的规范中,我可以在对 queryDeferred.resolve() 的调用中放置一些随机对象并测试成功回调。但如何测试错误情况呢?

spec.js

//= require spec_helper

describe( 'NoteListCtrl', function() {
// edited for brevity...

beforeEach( inject( function( $controller ) {

NoteMock = {
query: function() {
queryDeferred = $q.defer();
return { $promise: queryDeferred.promise };
}
}

spyOn( NoteMock, 'query' ).andCallThrough();

}));

describe( 'Note.getNotes', function() {

describe ( 'Note.query', function() {

beforeEach( function() {
$scope.getNotes();
queryDeferred.resolve( ????? ); // What goes here?
$rootScope.$apply();
});

});


});

});

最佳答案

使用拒绝:

queryDeferred.reject(someData);

关于javascript - 使用 Jasmine 在 Angular 中测试错误回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23455828/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com