tor-browser

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

compute_pressure_options.https.window.js (1552B)


      1 // META: variant=?globalScope=window
      2 // META: variant=?globalScope=dedicated_worker
      3 // META: script=/resources/testdriver.js
      4 // META: script=/resources/testdriver-vendor.js
      5 // META: script=/common/utils.js
      6 // META: script=/common/dispatcher/dispatcher.js
      7 // META: script=./resources/common.js
      8 
      9 'use strict';
     10 
     11 pressure_test(async t => {
     12  await create_virtual_pressure_source('cpu');
     13  t.add_cleanup(async () => {
     14    await remove_virtual_pressure_source('cpu');
     15  });
     16 
     17  await new Promise((resolve, reject) => {
     18    const observer = new PressureObserver(resolve);
     19    t.add_cleanup(() => observer.disconnect());
     20    observer.observe('cpu', {sampleInterval: 0}).catch(reject);
     21    update_virtual_pressure_source('cpu', 'critical').catch(reject);
     22  });
     23 }, 'PressureObserver observe method doesnt throw error for sampleInterval value 0');
     24 
     25 pressure_test(async t => {
     26  const observer =
     27      new PressureObserver(t.unreached_func('oops should not end up here'));
     28  t.add_cleanup(() => observer.disconnect());
     29  await promise_rejects_js(
     30      t, TypeError, observer.observe('cpu', {sampleInterval: -2}));
     31 }, 'PressureObserver observe method requires a positive sampleInterval');
     32 
     33 pressure_test(async t => {
     34  const observer =
     35      new PressureObserver(t.unreached_func('oops should not end up here'));
     36  t.add_cleanup(() => observer.disconnect());
     37  await promise_rejects_js(
     38      t, TypeError, observer.observe('cpu', {sampleInterval: 2 ** 32}));
     39 }, 'PressureObserver observe method requires a sampleInterval in unsigned long range');
     40 
     41 mark_as_done();