angularjs - $httpBackend.verifyNoOutstandingExpectation() leading to "No response defined !" error -


my understanding of $httpbackend.verifynooutstandingexpectation() says "make sure of requests $httpbackend.expect()-ed tests made code. if of them weren’t, i’ll throw exception."

1) seems redundant. isn't case corresponding $httpbackend.expect() fail, , alert you?

2) i'm getting no response defined ! error when use $httpbackend.verifynooutstandingexpectation(). error goes away , test passes when remove $httpbackend.verifynooutstandingexpectation(). why be?

enter image description here

admin.controller.spec.js:14 refers $httpbackend.verifynooutstandingexpectation() call.

admin.controller.spec.js

describe('admincontroller', function() {   var admincontroller, scope, $httpbackend;    beforeeach(module('mean-starter'));   beforeeach(inject(function($controller, $rootscope, _$httpbackend_) {     $httpbackend = _$httpbackend_;     scope = $rootscope.$new();     admincontroller = $controller('admincontroller', {       $scope: scope     });   }));    aftereach(function() {     $httpbackend.verifynooutstandingexpectation();     // $httpbackend.verifynooutstandingrequest();   });    it('gets users', function() {     $httpbackend.expectget('/users');   }); }); 

admin.controller.js

angular   .module('mean-starter')   .controller('admincontroller', admincontroller);  function admincontroller(user, auth, $state) {   var vm = this;   user     .list()     .success(function(data) {       vm.users = data;     })     .error(function() {       console.log('problem getting users.');     });    vm.delete = function(id) {     user       .delete(id)       .success(function(data) {         if (auth.getcurrentuser()._id === id) auth.logout(); // deleting         else $state.reload();       })       .error(function() {         console.log('problem deleting user.');       });   }; } 

the error message states problem - need define expected response before can verify expectation has been satisfied.

change

$httpbackend.expectget('/users'); 

to

$httpbackend.expectget('/users').respond([{   //response object or array }]); 

Comments

Popular posts from this blog

yii2 - Yii 2 Running a Cron in the basic template -

asp.net - 'System.Web.HttpContext' does not contain a definition for 'GetOwinContext' Mystery -

mercurial graft feature, can it copy? -