compute-pressure-disabled-by-permissions-policy.https.html (1892B)
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 src="/common/get-host-info.sub.js"></script> 7 <script> 8 "use strict"; 9 10 const same_origin_src = 11 '/permissions-policy/resources/permissions-policy-compute-pressure.html'; 12 const cross_origin_src = get_host_info().HTTPS_REMOTE_ORIGIN + same_origin_src; 13 const header = 'permissions policy header "compute-pressure=()"'; 14 const attribute = 'allow="compute-pressure" attribute'; 15 16 promise_test(async t => { 17 const observer = new PressureObserver( 18 t.unreached_func('oops should not end up here') 19 ); 20 await promise_rejects_dom(t, 'NotAllowedError', observer.observe("cpu")); 21 }, `${header} disallows the top-level document.`); 22 23 async_test(t => { 24 test_feature_availability( 25 'ComputePressure.observe()', 26 t, 27 same_origin_src, 28 expect_feature_unavailable_default 29 ); 30 }, `${header} disallows same-origin iframes.`); 31 32 async_test(t => { 33 test_feature_availability( 34 'ComputePressure.observe()', 35 t, 36 cross_origin_src, 37 expect_feature_unavailable_default 38 ); 39 }, `${header} disallows cross-origin iframes.`); 40 41 async_test(t => { 42 test_feature_availability( 43 'ComputePressure.observe()', 44 t, 45 same_origin_src, 46 expect_feature_unavailable_default, 47 'compute-pressure' 48 ); 49 }, `${header} disallows same-origin iframes despite the ${attribute}.`); 50 51 async_test(t => { 52 test_feature_availability( 53 'ComputePressure.observe()', 54 t, 55 cross_origin_src, 56 expect_feature_unavailable_default, 57 'compute-pressure' 58 ); 59 }, `${header} disallows cross-origin iframes despite the ${attribute}.`); 60 61 fetch_tests_from_worker(new Worker( 62 '/compute-pressure/resources/compute-pressure-disabled-by-permissions-policy-worker.js')); 63 </script> 64 </body>