tor-browser

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

task-controller-setPriority2.any.js (706B)


      1 // META: title=Scheduler: TaskController.setPriority and Task Order
      2 // META: global=window,worker
      3 'use strict';
      4 
      5 promise_test(async t => {
      6  const tasks = [];
      7  const runOrder = [];
      8  const taskControllers = [];
      9 
     10  for (let i = 0; i < 5; i++) {
     11    taskControllers.push(new TaskController({priority: 'background'}));
     12    const signal = taskControllers[i].signal;
     13    tasks.push(scheduler.postTask(() => { runOrder.push(i); }, {signal}));
     14  }
     15 
     16  taskControllers[2].setPriority('user-blocking');
     17  assert_equals(taskControllers[2].signal.priority, 'user-blocking');
     18 
     19  await Promise.all(tasks);
     20 
     21  assert_equals(runOrder.toString(), '2,0,1,3,4');
     22 }, 'Test TaskController.setPriority() affects task order.');