assert.timeout()
バージョン追加: 2.4.0.
説明
timeout( duration )
非同期処理の終了を待機する時間を設定します。
名前 | 説明 |
---|---|
duration (数値) |
待機時間の長さ(ミリ秒単位)。 |
このアサーションは、現在のテストで(最大で)待機する時間を定義します。QUnit.config.testTimeout
をテストごとにオーバーライドします。
タイムアウトの長さは、テストが実際に非同期関数または Promise を含む場合にのみ適用されます。0
が渡された場合、Promise を待機したり返したりするとテストが失敗する可能性があります。
別のタイムアウトがすでに設定されている後に assert.timeout()
が呼び出された場合、古いタイムアウトはクリアされ、新しい時間が新しいタイマーの開始に使用されます。
例
QUnit.test('wait for an event', assert => {
assert.timeout(1000); // Timeout after 1 second
const done = assert.async();
const adder = new NumberAdder();
adder.on('ready', res => {
assert.strictEqual(res, 12);
done();
});
adder.run([ 1, 1, 2, 3, 5 ]);
});
QUnit.test('wait for an async function', async assert => {
assert.timeout(500); // Timeout after 0.5 seconds
const result = await asyncAdder(5, 7);
assert.strictEqual(result, 12);
});
従来の ES5 構文の使用
QUnit.test('wait for a returned promise', function (assert) {
assert.timeout(500); // Timeout after 0.5 seconds
var promise = asyncAdder(5, 7);
return promise.then(function (result) {
assert.strictEqual(result, 12);
});
});