Как передать параметр done () в случае asyn c jest test.each - PullRequest
0 голосов
/ 28 января 2020

Я пытаюсь написать jest-тест, который тестирует асинхронный метод c, я хочу передать параметр done(), чтобы jest ожидал его запуска до завершения теста, однако я не знаю, где его поставить.

Есть идеи?

const testcases = [
        [
            'Crew',
            [1,2,3],
            Enum.Level1
        ],
        [
            'Staff',
            [4,5,6],
            Enum.Level2
        ]
    ];
test.each(testcases )(
        'Should be able to load differing cases %p',
        (
            typeName: string,
            initalVals: string[],
            type: LevelType
        ) => {
            // some call that updates mobx store state

            when(
                () => mobxstoreProperty.length == initalVals.length,
                () => {
                    // my assertions

                    done();
                }
            );
        }
    );

Для одного шутливого теста я могу сделать это:

test('my single test', done => {
  // some call that updates mobx store state

     when(
       () => mobxstoreProperty.length == initalVals.length,
       () => {
         // my assertions
         done();
       }
    );
});

Просто не знаете, как это сделать когда я использую метод test.each.

...