Достаточно ли проверить только, было ли вызвано действие ngrx? (модульный тест) - PullRequest
1 голос
/ 04 апреля 2020

Допустим, у меня есть следующий код в компоненте, который публикуется c и используется в представлении:

removeItemFromCart(item: CartItem): void {
  this.store$.dispatch(OrderingStoreActions.removeItemFromCart({ cartItem: item }));
}

В модульном тесте достаточно лишь проверить, что действие было отправлен?

it("should remove the item from the cart", () => {
    const item = <CartItem>{ amount: 1, product: { id: "p" } };
    component.removeItemFromCart(item);
    expect(store.dispatch).toHaveBeenCalledWith(OrderingStoreActions.removeItemFromCart({ cartItem: item  }));
});

Или я должен проверить в mockstore, был ли результат действия выполнен в хранилище возможностей?

1 Ответ

0 голосов
/ 04 апреля 2020

Вам следует выполнить модульное тестирование того, что ваш код правильно использует заданный API / библиотеку, а не то, что этот API / библиотека работает (это будет интеграционный тест). Итак, вам нужно подтвердить, что действие отправляется с параметрами, которые вы намеревались отправить на него. Тест, который вы показали здесь, достаточен.

...