#angular #jasmine
Вопрос:
Как издеваются над парами
this.id = params['id'];
(угловой маршрутизатор) в тесте в жасмине?
Мой код:
constructor(public activatedRoute: ActivatedRoute, private store: Store) { }
ngOnInit(): void {
this.store.dispatch(new LoadCategoriesAction());
this.store.dispatch(new LoadProductsByMainAction(false));
this.sub = this.activatedRoute.params.subscribe(params => {
this.id = params['id'];
console.log("!!!!!!!!!!!!!");
console.log(this.id);
if (this.id) {
this.store.dispatch(new LoadProductByIdAction(this.id));
}
})
}
Комментарии:
1. Вы читали angular.io/guide/testing-components-scenarios#routed-components ?
Ответ №1:
Вы должны создать макет для ActivatedRoute, что-то вроде приведенного ниже;
providers: [
...,
{provide: ActivatedRoute, useValue: {params: of({id: '123'})}}
]