chromium/third_party/blink/web_tests/external/wpt/navigation-timing/po-navigation.html

<!DOCTYPE HTML>
<meta charset=utf-8>
<title>PerformanceObservers: navigation</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<h1>PerformanceObservers: navigation</h1>
<p>
Navigation will <a href="https://w3c.github.io/performance-timeline/#dfn-queue-a-performanceentry">queue a PerformanceEntry</a>.
</p>
<div id="log"></div>
<script>
  async_test(function (t) {
    function checkEntry(pes) {
      assert_equals(pes.length, 1, "Only one navigation timing entry");
      assert_equals(pes[0].entryType, "navigation", "entryType is \"navigation\"");
      assert_equals(pes[0].name, window.location.toString(), "name is the address of the document");
    }
    var observer = new PerformanceObserver(
        t.step_func(function (entryList, obs) {
          checkEntry(entryList.getEntries());
          checkEntry(entryList.getEntriesByType("navigation"));
          checkEntry(entryList.getEntriesByName(window.location.toString()));
          observer.disconnect();
          t.done();
        })
      );
    observer.observe({entryTypes: ["navigation"]});
  }, "navigation entry is observable");
</script>