blob: c6b1e0bc8558a2908d6471fff0e7f5351d4a0022 [file] [log] [blame]
async_test(t => {
function checkEntryList(entries) {
assert_equals(entries.length, 1, "Only one navigation timing entry");
assert_equals(entries[0].entryType, "navigation", "entryType is \"navigation\"");
assert_equals(entries[0].name, window.location.toString(), "name is the address of the document");
}
// First observer creates second in callback to ensure the entry has been dispatched by the time
// the second observer begins observing.
new PerformanceObserver(t.step_func(entryList => {
checkEntryList(entryList.getEntries());
// Second observer requires 'buffered: true' to see the navigation entry.
new PerformanceObserver(t.step_func_done(list => {
checkEntryList(list.getEntries());
})).observe({type: 'navigation', buffered: true});
})).observe({entryTypes: ["navigation"]});
}, "PerformanceObserver with buffered flag sees previous navigation entry.");