场景:
this.dialog.open(otherComponent)
。 dialog.close(),
dialog.closeAll(),
,我尝试过创建模拟对话框并关闭
那,但是似乎什么都不起作用,因为原始组件在
测试不会关闭该对话框。 我该如何解决?
答案 0 :(得分:0)
如果需要,这是我创建的用于创建对话框服务的新模拟的函数:
matDialogMock(): SpyObj<MatDialog> {
return createSpyObj<MatDialog>('MatDialog', {
open: {
afterOpened: () => of(undefined),
afterClosed: () => of(undefined),
} as any
});
}
通过致电
const mock = matDialogMock();
您可以创建模拟的新实例,并将其注入测试中。
答案 1 :(得分:0)
{provide: MatDialog, useValue: {}}
我以这种方式嘲笑了MatDialogRef,但没有嘲笑MatDialog。感谢@trichetriche指出这一点。