Я реализовал пример akitafilterplugin, и все отлично. Теперь я пытаюсь написать модульные тесты для того же самого. Но когда я запускаю тесты, я получаю сообщение об ошибке: «TypeError: Невозможно прочитать свойство storeName of undefined» в
в новом AkitaFiltersPlugin (http://localhost: 9876 / karma_webpack / node_modules / akita-filters-plugin / ivy_ng cc / fesm2015 / akita-filters-plugin. js: 241: 38)
Насколько я понял, ошибка происходит из-за создания akitaFilterPlugin в конструкторе служебного файла.
Исходный код ниже:
В службе (PublicationService):
filterPublications: AkitaFiltersPlugin<PublicationState>;
constructor (private publicationsQuery: PublicationsQuery) {
this.filterPublications = new AkitaFiltersPlugin<PublicationState>(publicationsQuery);
}
В тестовом файле:
beforeEach(() => {
fixture = TestBed.createComponent(PublicationComponent);
comp = fixture.componentInstance;
pubService = TestBed.inject(PublicationsService);
\\Injecting necessary services
});
it('Page is created', () => {
expect(comp).toBeTruthy();
});
В магазине:
export interface PublicationState extends EntityState<Publication> {
loaded: boolean;
publication: string[];
}
@Injectable({providedIn: 'root'})
@StoreConfig({ name: 'Publications' })
export class PublicationsStore extends EntityStore<PublicationState, Publication> {
constructor() {
super(initalState);
}
}