tor-browser

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

setinterval-settimeout-clamping.html (870B)


      1 <!doctype html>
      2 <meta charset=utf-8>
      3 <meta name="assert" content ="setTimeout and setInterval sequencing is correct even with 0 timeout">
      4 <link rel="help" href="https://html.spec.whatwg.org/#run-steps-after-a-timeout" />
      5 <script src=/resources/testharness.js></script>
      6 <script src=/resources/testharnessreport.js></script>
      7 
      8 <script>
      9 async_test(t => {
     10  let done = false;
     11  const id = setInterval(() => {
     12    done = true;
     13  }, 0);
     14  t.add_cleanup(() => clearInterval(id));
     15 
     16  setTimeout(t.step_func(() => {
     17    assert_true(done);
     18    t.done();
     19  }), 0);
     20 }, "setInterval(0) before setTimeout(0)");
     21 
     22 async_test(t => {
     23  let done = false;
     24  setTimeout(() => {
     25    done = true;
     26  }, 0);
     27 
     28  const id = setInterval(t.step_func(() => {
     29    assert_true(done);
     30    t.done();
     31  }), 0);
     32  t.add_cleanup(() => clearInterval(id));
     33 }, "setTimeout(0) before setInterval(0)");
     34 </script>