Я пытаюсь написать тестовый пример для одного из компонентов в приложении, конструктор выглядит следующим образом.
constructor(private router: Router,
public dialog: MatDialog,
private tlsApiService: TlsApiService,
private ncCutterSheetApiService: NcCutterSheetApiService,
) {
this.outEvent = new EventEmitter<number>();
router.events.forEach((event) => {
if(event instanceof NavigationStart) {
if(this.dialogRef){
this.dialogRef.close()
}
}
// NavigationEnd
// NavigationCancel
// NavigationError
// RoutesRecognized
});
}
когда я пытаюсь написать имитацию маршрутизатора с помощью jasmine.createSpyObj Я получение этого сообщения.
TypeError: router.events.forEach не является функцией
Я пробовал следующие способы создания spyObject
mockRouter = jasmine.createSpyObj(['events',['forEach']]);
mockRouter = jasmine.createSpyObj('events',['forEach']);
mockRouter = jasmine.createSpyObj(['events','forEach']);
У меня все та же ошибка. Я выполнил поиск в Google, пытаясь найти то, что мне нужно, и пока я не нашел то, что ищу, чтобы это работало. Любые предложения будут приветствоваться.