The tests in this directory were imported from the W3C repository.
Do NOT modify these tests directly in WebKit.
Instead, create a pull request on the WPT github:
	https://github.com/web-platform-tests/wpt

Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport

Do NOT modify or remove this file.

------------------------------------------------------------------------
Properties requiring vendor prefixes:
None
Property values requiring vendor prefixes:
None
------------------------------------------------------------------------
List of files:
/LayoutTests/imported/w3c/web-platform-tests/reporting/META.yml
/LayoutTests/imported/w3c/web-platform-tests/reporting/bufferSize.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/cross-origin-report-no-credentials.https.sub.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/cross-origin-report-no-credentials.https.sub.html.sub.headers
/LayoutTests/imported/w3c/web-platform-tests/reporting/cross-origin-reports-isolated.https.sub.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/cross-origin-reports-isolated.https.sub.html.sub.headers
/LayoutTests/imported/w3c/web-platform-tests/reporting/cross-origin-same-site-credentials.https.sub.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/disconnect.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/document-reporting-bypass-report-to.https.sub.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/document-reporting-bypass-report-to.https.sub.html.sub.headers
/LayoutTests/imported/w3c/web-platform-tests/reporting/document-reporting-default-endpoint.https.sub.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/document-reporting-default-endpoint.https.sub.html.sub.headers
/LayoutTests/imported/w3c/web-platform-tests/reporting/document-reporting-destroy-after-document-close.https.sub.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/document-reporting-named-endpoints.https.sub.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/document-reporting-named-endpoints.https.sub.html.sub.headers
/LayoutTests/imported/w3c/web-platform-tests/reporting/document-reporting-not-batch-different-document.https.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/document-reporting-override-endpoint.https.sub.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/document-reporting-override-endpoint.https.sub.html.sub.headers
/LayoutTests/imported/w3c/web-platform-tests/reporting/document-reporting-path-absolute.https.sub.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/document-reporting-path-absolute.https.sub.html.sub.headers
/LayoutTests/imported/w3c/web-platform-tests/reporting/generateTestReport.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/idlharness.any.js
/LayoutTests/imported/w3c/web-platform-tests/reporting/nestedReport.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/order.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/path-absolute-endpoint.https.sub.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/path-absolute-endpoint.https.sub.html.sub.headers
/LayoutTests/imported/w3c/web-platform-tests/reporting/reporting-isolated-across-navigations.https.sub.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/same-origin-cross-site-credentials.https.sub.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/same-origin-report-credentials.https.sub.html
/LayoutTests/imported/w3c/web-platform-tests/reporting/same-origin-report-credentials.https.sub.html.sub.headers
/LayoutTests/imported/w3c/web-platform-tests/reporting/same-origin-same-site-credentials.https.sub.html
