Я следовал официальной документации по тестированию селекторов ngxs (https://ngxs.gitbook.io/ngxs/recipes/unit-testing#testing-selectors),, однако в ней не описано, как тестировать динамические селекторы, созданные с помощью createSelector
.
.
Мой обычный селектор просто получает состояние в качестве аргумента, поэтому я могу легко проверить его, передав подготовленное состояние и сравнив выходные данные.
@Selector()
static nachweise(state: NachweisStateModel) {
return state.nachweise;
}
//Setup state
const state = {...};
//Compare expectations
expect(NachweisState.nachweise(state)).toEqual(...);
Мой динамический селектор выглядит так:
@Selector()
static nachweisById(id: string) {
return createSelector([NachweisState], state => {
return state.nachweise.find(nachweis => nachweis.id === id);
});
}
Единственный параметр, который он получает, - это идентификатор, по которому он выбирается, но не состояние. Состояние автоматически передается путем указания его в качестве первого параметра для createSelector
, и я не знаю, как мне проверить этот селектор.