tor-browser

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

idle-detection-disabled-by-permissions-policy.https.sub.html (2213B)


      1 <!DOCTYPE html>
      2 <body>
      3 <script src=/resources/testharness.js></script>
      4 <script src=/resources/testharnessreport.js></script>
      5 <script src=/permissions-policy/resources/permissions-policy.js></script>
      6 <script>
      7 'use strict';
      8 
      9 const sub = 'https://{{domains[www]}}:{{ports[https][0]}}';
     10 const same_origin_src =
     11  '/permissions-policy/resources/permissions-policy-idle-detection.html'
     12 const same_origin_worker_frame_src =
     13    '/permissions-policy/resources/permissions-policy-idle-detection-worker.html';
     14 const cross_origin_src = sub + same_origin_src;
     15 const cross_origin_worker_frame_src = sub + same_origin_worker_frame_src;
     16 
     17 promise_test(async () => {
     18  try {
     19    let idleDetector = new IdleDetector();
     20    await idleDetector.start();
     21    assert_unreached('expected promise to reject with SecurityError');
     22  } catch (error) {
     23    assert_equals(error.name, 'SecurityError');
     24  }
     25 }, 'Permissions-Policy idle-detection=() explicitly set by top-level frame ' +
     26   'disallows query in the top-level document.');
     27 
     28 async_test(t => {
     29  test_feature_availability('new IdleDetector().start()', t, same_origin_src,
     30      expect_feature_unavailable_default);
     31 }, 'Permissions-Policy idle-detection=() explicitly set by top-level frame ' +
     32   'disallows same-origin iframes.');
     33 
     34 async_test(t => {
     35  test_feature_availability('new IdleDetector().start()', t, same_origin_worker_frame_src,
     36      expect_feature_unavailable_default);
     37 }, 'Permissions-Policy idle-detection=() explicitly set by top-level frame ' +
     38   'disallows workers in same-origin iframes.');
     39 
     40 async_test(t => {
     41  test_feature_availability('new IdleDetector().start()', t, cross_origin_src,
     42      expect_feature_unavailable_default);
     43 }, 'Permissions-Policy idle-detection=() explicitly set by top-level frame ' +
     44   'disallows cross-origin iframes.');
     45 
     46 async_test(t => {
     47  test_feature_availability('new IdleDetector().start()', t, cross_origin_worker_frame_src,
     48      expect_feature_unavailable_default);
     49 }, 'Permissions-Policy idle-detection=() explicitly set by top-level frame ' +
     50   'disallows workers in cross-origin iframes.');
     51 
     52 fetch_tests_from_worker(new Worker(
     53  'resources/idle-detection-disabled-by-permissions-policy-worker.js'))
     54 
     55 </script>
     56 </body>