Тестирование селекторов, которые используют селекторы - PullRequest
0 голосов
/ 18 февраля 2020

У меня есть (Dynami c) селектор, который использует другой селектор. Я думал, что смогу проверить его с (поддельным) состоянием, ожидая, что проверенный селектор вызовет используемый селектор с этим состоянием. Однако я, кажется, должен проверить это с данными, похожими на вывод вызываемого селектора.

Следующий фрагмент кода пытается проиллюстрировать это:


    export class SomeSelectors {

        @Selector([SomeState])
        static getSomethingFirst(state: SomeModel) {
            return state.something;
        }

        static getSomethingSecond(...categories: string[]) {
            return createSelector([SomeSelectors.getSomethingFirst], (somethingsFirst) =>
                ..
            );
        }
    }

    describe('SomeSelectors', () => {
        const someFakeState = {
            something: 'test me'
        };

       describe('getSomethingSecond', () => {
          it('i would like to test it with a fake state', () => {
             const result = SomeSelectors.getSomethingSecond(someFakeState)('test-category');
             expect(result).toBeTruthy();
          });

           it('however i must test it with something that is like ', () => {
               const result = SomeSelectors.getSomethingSecond(someFakeState.something)('test-category');
               expect(result).toBeTruthy();
           });
       });
    });


Думаю, мне не хватает понимания того, как эти селекторы действительно работают. Кто-нибудь указывает на то, как их увидеть?

...