tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

pause-remove-from-document-networkState.html (1023B)


      1 <!doctype html>
      2 <title>paused state when removing from a document when networkState is NETWORK_EMPTY</title>
      3 <meta name="timeout" content="long" />
      4 <script src="/resources/testharness.js"></script>
      5 <script src="/resources/testharnessreport.js"></script>
      6 <div id="log"></div>
      7 <video hidden></video>
      8 <script>
      9 // Negative test for the specified behavior prior to HTML r8447.
     10 promise_test(async function(t) {
     11  var v = document.querySelector('video');
     12  var watcher = new EventWatcher(t, v, [ 'pause' ]);
     13  var p = v.play();
     14 
     15  await new Promise(resolve => t.step_timeout(resolve, 0));
     16  assert_equals(v.networkState, v.NETWORK_EMPTY,
     17                'networkState after stable state');
     18  assert_false(v.paused, 'paused after stable state');
     19  v.parentNode.removeChild(v);
     20  assert_false(v.paused, 'paused after removing');
     21 
     22  await watcher.wait_for('pause');
     23 
     24  await promise_rejects_dom(t, 'AbortError', p, 'We expect promise being rejected');
     25  assert_true(v.paused, 'paused after removing and stable state');
     26 });
     27 </script>