通过编写复杂的模拟,我意识到,使用jest模拟扩展的Observable.of模拟接口实现不会触发。下面的测试在超时时失败,导致可观察到的永远不会触发。
import { mock } from 'jest-mock-extended';
import { of } from 'rxjs';
interface TestInterface {
dummyProperty: string;
}
describe( 'Test Observable.of mock interface implementation', () => {
it( 'test Observable of an Interface mock', (done) => {
const mockTestInterface = mock<TestInterface>();
of( mockTestInterface ).subscribe( testObject => {
expect( testObject ).toBeTruthy();
done();
})
})
})我做错了什么,还是监督?
发布于 2022-09-09 03:44:47
尝试:
import { mock, JestMockExtended } from 'jest-mock-extended';
import { of } from 'rxjs';
interface TestInterface {
dummyProperty: string;
}
describe('Test Observable.of mock interface implementation', () => {
it('test Observable of an Interface mock', (done) => {
JestMockExtended.configure({ ignoreProps: ['schedule'] });
const mockTestInterface = mock<TestInterface>();
of(mockTestInterface).subscribe((testObject) => {
expect(testObject).toBeTruthy();
done();
});
});
});包版本:
"rxjs": "^6.5.4",
"jest-mock-extended": "^2.0.7",
"jest": "^28.1.3",https://stackoverflow.com/questions/73645793
复制相似问题