summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/navigation-timing/buffered-flag.window.js
blob: c6b1e0bc8558a2908d6471fff0e7f5351d4a0022 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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.");