2016-08-24 10 views
0

私はJest/React/Flux/Webpackを使用しているファイルが奇妙な状態です...ここにテストファイルがあります。特定のファイルに対してJest mockingが機能しない

jest.unmock('../dashboard'); 

import CommonUtils from "../utils/CommonUtils"; 

describe('Dashboard Page',() => { 
    it('creates',() => { 
     ... 
    }); 
}); 

私は、テストを実行すると、エラーがスローされます。

ここ
● Runtime Error 
    - TypeError: (0 , _shouldUpdate2.default) is not a function 
     ... 
     at Object.<anonymous> (src\main\js\components\App.js:3:38) 
     at Object.<anonymous> (src\main\js\utils\CommonUtils.js:4:38) 
     at Object.<anonymous> (src\test\js\dashboard-test.js:3:46) 

CommonUtilsは明らかに嘲笑ではありません。私の他のファイルでは、オートモックは正常に動作しています。私はこれを追加する場合、しかし...

jest.mock('../utils/CommonUtils'); 

同じ前のエラー:

jest.mock('../utils/CommonUtils',() => { 
    return {someFunc: jest.fn()}; 
}); 

CommonUtils

が今嘲笑されていますが、私はできない私はテストファイルの先頭に追加した場合

someFuncのモックオブジェクトを常に再作成しているので、これを比較してみてください...外で変数を作成することはできません

var a = {someFunc: jest.fn()}; 
jest.mock('../utils/CommonUtils',() => { 
    return a; 
}); 

Jestは許可していません!

+0

'someFunc'を何かで呼び出すようにテストしようとしていますか?あなたのコードを表示することができます – grgmo

+0

最後に私はautomockを無効にしました、それはあまりにもトリッキーでした。ありがとう! –

答えて

0

最後に私はJestを更新し、自動モックを無効にしました。これは決定的ではありませんが、再現性はありません。

関連する問題