toHaveBeenCalledWithとtoBeCalledWithの違い
- toHaveBeenCalledWithはjasmine
- toHaveBeenCalledWithはspyが呼ばれたかを確認する
- toBeCalledWithはjest
- toBeCalledWithはモック関数が呼ばれたかを確認する
ユースケース
- 親コンポーネント
- 子コンポーネント
親コンポーネントから子コンポーネントに関数をpropsで渡していて、
子コンポーネントでpropsで渡された関数をテストする時はjestの方。
理由はspyが仕込めないから。
spyOnでオブジェクトに入り込み、監視対象メソッドをspyに書き換えるけど、propsは書き換えられないようです。
jestの方であれば、spyを仕込まなくてよくて、ダミー関数をjest.fn()で作成して、そのダミー関数が呼ばれたかを確認すればいい。
reactもテストも初めてだから、メッチャわけ分からんかった。
ドキュメントが英語しかないから、大学受験の英語やっといてよかったな〜と思いました。
話したりは無理だけど、簡単になら読めるので。
英語の勉強も頑張ろうと思います。