在httpBackend mock中测试post load

时间:2014-03-10 18:55:29

标签: angularjs

我正试图以角度测试我的服务,而我在测试put请求时遇到了困难。我想测试的是看到请求的内容是正确的。 第一次尝试是这样的:

  httpBackend.expectPUT('/data/category/1',newCategory).respond(201,'');
  service.addCategory(newCategory);
  httpBackend.flush();

希望newCategory对象转向json。但它失败了:

 TypeError: object is not a function

另一种尝试是使用函数来测试请求加载:

var isNewCategory = function(str){
    return JSON.parse(str) == newCategory;
};
httpBackend.expectPUT('/data/category/1',isNewCategory).respond(201,'');
service.addCategory(newCategory);
httpBackend.flush();

这会产生:

  

错误:具有不同数据的预期PUT /数据/类别/ 1      EXPECTED:function(str){              return JSON.parse(str)== newCategory;            }      GOT:{“name”:“new category”,“id”:“2”,“parentId”:“1”}          $ httpBackend(C:/Users/abizhanzadeh@cta.loc/Documents/work

有人可以帮我这个吗?

0 个答案:

没有答案