残り火受け入れテストで「変更」イベントをトリガーするのに問題があります。
観測された「値」プロパティを持つレンジスライダーがあります。変更時に、スライダーは、スライダーの値に基づいてパラメーターを使用して URL を更新する API 要求を送信します。
jQuery を使用してテストでスライダーの値を変更できます。これにより、UI のスライダーが正常に更新されます...
$("#slider").val(3.0).change();
...しかし、変更イベントは発生しないため、API 呼び出しはありません。この同じセットアップは、「クリック」または「フィルイン」を使用してリクエストをトリガーできる同様のテストで正常に機能します。
実行ループと triggerEvent ヘルパー (以下を参照) の両方を使用してみましたが、うまくいきません。
// 1. using the run loop -- updates UI, but no change event fired
Ember.run(function() {
$("#gpa-slider").val(3.0).change();
});
andThen(() => {
assert.equal(currentURL(), "/athletes?gpa=3.0")
});
//2. using triggerEvent helper --
// doesn't update UI, slider value, or trigger change event
triggerEvent('#gpa-slider', 'change', {value: 3.8} )
andThen(() => {
assert.equal(currentURL(), "/athletes?gpa=3.0")
});
triggerEvent() の設定が間違っていますか? これを処理するより良い方法はありますか?