Javascript AngularJS如何测试期望的任何参数
我使用AngularJS和Jasmine Karma单元测试。在这里,我不想用确切的时间戳测试我的http调用(这会导致一次又一次的失败),而是想将它与作为“stamp”值发送的任何参数相匹配Javascript AngularJS如何测试期望的任何参数,javascript,angularjs,jasmine,karma-runner,Javascript,Angularjs,Jasmine,Karma Runner,我使用AngularJS和Jasmine Karma单元测试。在这里,我不想用确切的时间戳测试我的http调用(这会导致一次又一次的失败),而是想将它与作为“stamp”值发送的任何参数相匹配 找不到办法 在Date原型的DategetTime方法上设置一个间谍,并让它返回一个您可以期望的值 var timestamp = 1234; spyOn(Date.prototype, 'getTime').andReturn(timestamp); $httpBackend.expectGET('pa
找不到办法 在
Date
原型的DategetTime
方法上设置一个间谍,并让它返回一个您可以期望的值
var timestamp = 1234;
spyOn(Date.prototype, 'getTime').andReturn(timestamp);
$httpBackend.expectGET('path/company?stamp='+timestamp).respond(200);
现在,您可以控制时间并获得一个可以检查的值。我希望这听起来不会太愚蠢,因为我不知道问题的全部背景,但因为这是为了测试目的,所以只需将伪时间戳设置为某个固定整数?然后,
expectGET
就可以很容易地完成了
var timestamp = 1234;
spyOn(Date.prototype, 'getTime').andReturn(timestamp);
$httpBackend.expectGET('path/company?stamp='+timestamp).respond(200);