summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/navigation-api/navigate-event/navigate-history-back-bfcache.html
blob: 0336ff1c2fe0ed1b8a0e63698a8f21f9e6817d20 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<!doctype html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/utils.js"></script>
<script src="/common/dispatcher/dispatcher.js"></script>
<script src="/html/browsers/browsing-the-web/back-forward-cache/resources/helper.sub.js"></script>

<script>
runBfcacheTest({
  targetOrigin: originSameOrigin,
  funcBeforeBackNavigation: () => {
    window.did_navigate = false;
    navigation.onnavigate = () => window.did_navigate = true;
  },
  async funcAfterAssertion(pageA, pageB) {
    // When `funcAfterAssertion` is called, we've already navigated to pageB,
    // then gone back to pageA with bfcache. Now go forward to pageB so we can
    // observe whether the navigate event fired.
    await pageA.execute_script(() => history.forward());
    await pageB.execute_script(waitForPageShow);
    assert_true(await pageB.execute_script(() => window.did_navigate));
  }
}, "navigate event should fire when traversing to a bfcache hit");
</script>