我使用AngularJS和Jasmine Karma单元测试。在这里,我不想用精确的时间戳测试我的http调用(导致失败的时间),但是想要将它与作为“戳”值发送的任何参数匹配;
$httpBackend.expectGET(path/company?stamp='+new Date().getTime()).respond(200);
无法找到办法!
答案 0 :(得分:5)
在getTime
原型的日期Date
方法上设置一个间谍,让它返回一个你可以期待的值。
var timestamp = 1234;
spyOn(Date.prototype, 'getTime').andReturn(timestamp);
$httpBackend.expectGET('path/company?stamp='+timestamp).respond(200);
现在您可以控制时间并获得可以检查的值。