1
にスローされたとき、私は、次のJSクラスを持って合格しないユニットテストはエラーが
test('Non string event fails',() => {
expect(MyDispatcher.subscribe(3, 'myHandler')).toThrow();
});
問題は、私が実行したときにということですテスト、それはこのエラーで失敗します:
● myDispatcher › Non string event fails
eventName must be a string
at MyDispatcher.subscribe (src/modules/MyDispatcher.js:10:7)
at Object.<anonymous> (src/modules/__tests__/MyDispatcherTest.js:26:31)
私はテストが失敗する理由を理解できません。このメソッドはエラーをスローします。これはまさに私がテストしているものです。したがって、テストは合格するはずですか?
また、私は、このテストを試してみました:
expect(MyDispatcher.subscribe(3, 'myHandler')).toThrowError('eventName must be a string');
と、このテスト:
expect(MyDispatcher.subscribe(3, 'myHandler')).toThrow(new Error('eventName must be a string'));
しかし、どちらも同じエラーメッセージが表示されて失敗。
これらのテストが失敗する理由は何ですか?
で
を交換してください。私は入力が間違っているので、私はエラーを投げることができます。 – octavian
回答が更新されました – Maluen