Я работаю над проектом, в котором я получаю данные отчетов из нескольких сторонних API и показываю их в таблицах с настраиваемыми фильтрами и другими вещами.Работает нормально, но у меня проблема с тестированием.У меня есть 1 файл JSON, состоящий из учетных данных и конечной точки каждой панели.Как только приложение запускается, я читаю этот файл.
// factory that reads file
export function akrpFactory(akrp: AkrpService) {
return () => akrp.load();
}
// akrp.load method returns this.http.get("./assets/data.json")
// inside ngModule
providers: [
{
provide: APP_INITIALIZER,
useFactory: akrpFactory,
deps: [AkrpService],
multi: true
}
]
// after this data is available throughout the application
В компоненте панели мониторинга ngAfterViewInit есть один http-вызов
ngAfterViewInit() {
this.getPerformingFeeds(this.selectedPanel.key, '0-100');
}
// this.selectedPanel.key contains one of data records from json file
// here I am getting error ('TypeError: Cannot read property 'key' of undefined') during testing
, в файле .spec.ts есть только один контрольный пример.Я попытался назначить component.selectedPanel, но все еще та же ошибка
it('should create', () => {
expect(component).toBeTruthy();
});
Ну, я новичок в угловых версиях 2+, а также тестирование, не уверен, что делать.все будет полезно, спасибо.