イベントの後に呼び出される関数をテストするテストを作成しようとしていますが、この関数を jquery プロキシでラップしており、sinon スパイをオフにしているようです。
jquery は次のようになります。
this.$modalcontent.on('change', '.js-qty-to-return', $.proxy(this.qtyChanged, this))
私のテストは次のようになります。
it('should trigger qtyChange function', function(done) {
var proxy = sinon.stub(jQuery, 'proxy');
$('.js-qty-to-return').trigger('change');
expect(proxy.calledWith(this.OrderHistoryTable.qtyChanged, this.OrderHistoryTable)).to.be.ok;
proxy.restore();
done();
});
また、テストの上の関数 before でスタブを実行しようとしました。スタブの代わりに sinon spy を使用してみました。関数/メソッド自体もスタブしようとしました。関数が実際に呼び出されていることを確認しました。 、トリガーからデータを受信しており、期待どおりに処理していますが、 a をチェックする.called
と常に false が返されます。
簡単なことを見落としているだけかもしれませんが、提案やアイデアは役に立ちます。