tor-browser

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

page-visibility.https.html (1305B)


      1 <!DOCTYPE html>
      2 <html>
      3 <head>
      4 <script src="/resources/testharness.js"></script>
      5 <script src="/resources/testharnessreport.js"></script>
      6 <script src="/resources/test-only-api.js"></script>
      7 <script src="/resources/testdriver.js"></script>
      8 <script src="/resources/testdriver-vendor.js"></script>
      9 <script src="/page-visibility/resources/window_state_context.js"></script>
     10 <script src="resources/battery-status-helpers.js"></script>
     11 </head>
     12 <body>
     13 <script>
     14 battery_status_test(async (t, mockBatteryMonitor) => {
     15  mockBatteryMonitor.setBatteryStatus(false, 10, 20, 0.5);
     16  const battery = await navigator.getBattery();
     17 
     18  mockBatteryMonitor.verifyBatteryStatus(battery);
     19 
     20  const fail = () => { throw new Error('unexpected levelchange event'); };
     21  battery.addEventListener('levelchange', fail);
     22 
     23  const {minimize, restore} = window_state_context(t);
     24  await minimize();
     25  mockBatteryMonitor.setBatteryStatus(false, 10, 20, 0.55);
     26  battery.removeEventListener('levelchange', fail);
     27 
     28  const change =
     29      new Promise(resolve => battery.addEventListener('levelchange', resolve));
     30  await restore();
     31  mockBatteryMonitor.setBatteryStatus(false, 10, 20, 0.6);
     32  await change;
     33 
     34  mockBatteryMonitor.verifyBatteryStatus(battery);
     35 }, 'battery status events only fire on visible pages');
     36 </script>
     37 </body>
     38 </html>