Javascript 茉莉花似乎没有';t支持模拟时钟设置为立即

Javascript 茉莉花似乎没有';t支持模拟时钟设置为立即,javascript,typescript,unit-testing,jasmine,Javascript,Typescript,Unit Testing,Jasmine,以下是我的测试: 对于setTimeout,jasmine.clock()和jasmine.clock().tick(…)工作正常 index.ts: import*作为mod from./mod'; 导出函数main(){ 设置超时(()=>{ mod.foo(); }, 10); } mod.ts: 导出函数foo(){} 索引规范ts: 从“/”导入{main}; 从“/mod”导入*作为mod; fdescribe('setImmediate',()=>{ beforeach(函数(

以下是我的测试:

对于
setTimeout
jasmine.clock()
jasmine.clock().tick(…)
工作正常

index.ts

import*作为mod from./mod';
导出函数main(){
设置超时(()=>{
mod.foo();
}, 10);
}
mod.ts

导出函数foo(){}
索引规范ts

从“/”导入{main};
从“/mod”导入*作为mod;
fdescribe('setImmediate',()=>{
beforeach(函数(){
jasmine.clock().install();
});
之后(函数(){
jasmine.clock().uninstall();
});
它('应该通过',()=>{
const fooSpy:jasmine.Spy=spyOn(mod,'foo')。和.stub();
main();
jasmine.clock().滴答声(10);
预计(fooSpy)。已被催收时间(1);
});
});
单元测试结果:

headlesschrome73.0.3683(Mac OS X 10.13.6):执行了4次中的1次(跳过3次)成功(0.029秒/0.004秒)
总数:1成功
总数:1成功
总数:1成功
如果将
setTimeout
替换为
setImmediate
,则单元测试失败

index.ts

import*作为mod from./mod';
导出函数main(){
setImmediate(()=>{
mod.foo();
});
}
单元测试结果:

HeadlessChrome 73.0.3683(Mac OS X 10.13.6)setImmediate应通过失败
错误:预期spy foo已被调用一次。它被调用了0次。
在
但这个问题有点过时了,没有答案

使用
ng test
命令,我的测试环境是angular 8.x。我认为这个问题与测试环境无关。以及节点模块的版本:

    "jasmine-core": "^3.5.0",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "^4.4.1",
    "karma-chrome-launcher": "^3.1.0",
    "karma-coverage-istanbul-reporter": "^2.1.1",
    "karma-jasmine": "^3.1.0",
    "karma-jasmine-html-reporter": "^1.5.1",