2017-01-19 6 views
4

私のコードでは、window.confirmプロンプトの「OK」クリック時にコールバックをトリガーし、コールバックがトリガーされたかどうかをテストしたいと思います。私は冗談で、このスタブを達成することができます方法はありJestのスタブウィンドウ関数

const confirmStub = sinon.stub(window, 'confirm'); 
confirmStub.returns(true); 

sinon

、私は経由window.confirm機能をスタブすることができますか?

答えて

12

ジストでは、globalを使用して上書きすることができます。

global.confirm =() => true 

jestのように、すべてのテストファイルは独自のプロセスで実行されるため、設定をリセットする必要はありません。

+0

設定をリセットする必要はないとは思いません。これをテストしたところ、 'global.innerWidth'を設定したときに、それがテスト全体にわたって持続していることを確認できました。 – jessepinho

+1

テストでは、テストファイル –

関連する問題