| <!DOCTYPE html> |
| <html> |
| <head> |
| <script src='/resources/testharness.js'></script> |
| <script src='/resources/testharnessreport.js'></script> |
| <script src='../resources/feature-policy-report-json.js'></script> |
| </head> |
| <body> |
| <script> |
| var t = async_test("Sync-xhr Report Format"); |
| |
| var check_report_format = (reports, observer) => { |
| let report = reports[0]; |
| assert_equals(report.type, "feature-policy-violation"); |
| assert_equals(report.url, document.location.href); |
| assert_equals(report.body.featureId, "sync-xhr"); |
| assert_equals(report.body.sourceFile, document.location.href); |
| assert_equals(typeof report.body.lineNumber, "number"); |
| assert_equals(typeof report.body.columnNumber, "number"); |
| assert_equals(report.body.disposition, "enforce"); |
| check_report_json(report); |
| }; |
| |
| new ReportingObserver(t.step_func_done(check_report_format), |
| {types: ['feature-policy-violation']}).observe(); |
| |
| t.step_func(() => { |
| var xhr = new XMLHttpRequest(); |
| xhr.open("GET", document.location.href, false); |
| assert_throws_dom('NetworkError', |
| () => xhr.send(), |
| "Synchronous XHR.send should throw an exception when disabled"); |
| })(); |
| </script> |
| </body> |
| </html> |