encrypted-media-reporting.https.html (1371B)
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <script src='/resources/testharness.js'></script> 5 <script src='/resources/testharnessreport.js'></script> 6 </head> 7 <body> 8 <script> 9 var check_report_format = (reports, observer) => { 10 let report = reports[0]; 11 assert_equals(report.type, "permissions-policy-violation"); 12 assert_equals(report.url, document.location.href); 13 assert_equals(report.body.featureId, "encrypted-media"); 14 assert_equals(report.body.disposition, "enforce"); 15 assert_equals(report.body.sourceFile, document.location.href); 16 assert_equals(typeof report.body.lineNumber, "number"); 17 assert_equals(typeof report.body.columnNumber, "number"); 18 }; 19 20 promise_test(async t => { 21 const report = new Promise(resolve => { 22 new ReportingObserver((reports, observer) => resolve([reports, observer]), 23 {types: ['permissions-policy-violation']}).observe(); 24 }); 25 await promise_rejects_dom(t, "SecurityError", 26 navigator.requestMediaKeySystemAccess("org.w3.clearkey", 27 [{ 28 initDataTypes: ["webm"], 29 videoCapabilities: [{contentType: 'video/webm;codecs="vp8"'}], 30 }]), 31 "requestMediaKeySystemAccess() should not be allowed in this document."); 32 const [reports, observer] = await report; 33 check_report_format(reports, observer); 34 }, "Encrypted Media report format"); 35 </script> 36 </body> 37 </html>