tor-browser

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

compute_pressure_observe_idempotent.https.window.js (943B)


      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  const update = await new Promise((resolve, reject) => {
     18    const observer = new PressureObserver(resolve);
     19    t.add_cleanup(() => observer.disconnect());
     20    observer.observe('cpu').catch(reject);
     21    observer.observe('cpu').catch(reject);
     22    observer.observe('cpu').catch(reject);
     23    update_virtual_pressure_source('cpu', 'critical').catch(reject);
     24  });
     25 
     26  assert_equals(update[0].state, 'critical');
     27 }, 'PressureObserver.observe() is idempotent');
     28 
     29 mark_as_done();