зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1576234 [wpt PR 18643] - [Longtasks] Add microtask test, a=testonly
Automatic update from web-platform-tests [Longtasks] Add microtask test Bug: 980581 Change-Id: I3756836d5d865e7d68530f515a310bf925229148 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1769296 Commit-Queue: Nicolás Peña Moreno <npm@chromium.org> Reviewed-by: Timothy Dresser <tdresser@chromium.org> Cr-Commit-Position: refs/heads/master@{#691181} -- wpt-commits: 716d242be4ecb00656a5c8c59086675211e9e740 wpt-pr: 18643
This commit is contained in:
Родитель
cbefc23f7c
Коммит
9eeec0473f
|
@ -0,0 +1,29 @@
|
|||
async_test(function (t) {
|
||||
if (typeof PerformanceLongTaskTiming === 'undefined') {
|
||||
assert_unreached("Longtasks are not supported.");
|
||||
t.done();
|
||||
}
|
||||
new PerformanceObserver(
|
||||
t.step_func_done(entryList => {
|
||||
const entries = entryList.getEntries();
|
||||
assert_equals(entries.length, 1,
|
||||
'Exactly one entry is expected.');
|
||||
const longtask = entries[0];
|
||||
assert_equals(longtask.entryType, 'longtask');
|
||||
assert_equals(longtask.name, 'self');
|
||||
assert_greater_than(longtask.duration, 50);
|
||||
assert_greater_than_equal(longtask.startTime, 0);
|
||||
const currentTime = performance.now();
|
||||
assert_less_than_equal(longtask.startTime, currentTime);
|
||||
t.done();
|
||||
})
|
||||
).observe({entryTypes: ['longtask']});
|
||||
|
||||
window.onload = () => {
|
||||
/* Generate a slow microtask */
|
||||
Promise.resolve().then(() => {
|
||||
const begin = window.performance.now();
|
||||
while (window.performance.now() < begin + 60);
|
||||
});
|
||||
};
|
||||
}, 'A short task followed by a long microtask is observable.');
|
Загрузка…
Ссылка в новой задаче