summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/navigation-api/updateCurrentEntry-method/exception-order-not-fully-active-unserializablestate.html
blob: 1e1c1e2bae48315a5b895b1ed008b49e35c102a7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<!doctype html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<iframe id="iframe" src="/common/blank.html"></iframe>

<script>
async_test(t => {
  window.onload = t.step_func_done(() => {
    const wNavigation = iframe.contentWindow.navigation;
    const wDOMException = iframe.contentWindow.DOMException;

    iframe.remove();

    assert_throws_dom("InvalidStateError", wDOMException, () => {
      wNavigation.updateCurrentEntry({ state: document.body });
    });
    assert_equals(navigation.currentEntry.getState(), undefined);
  });
}, `updateCurrentEntry() with unserializable state while not fully active must throw an "InvalidStateError", not a "DataCloneError"`);
</script>