mirror of
https://github.com/servo/servo
synced 2026-05-11 17:37:21 +02:00
51 lines
2.0 KiB
HTML
51 lines
2.0 KiB
HTML
<!doctype html>
|
|
<html>
|
|
<head>
|
|
<title>Test that the reporting-api generate_test_report feature honors endpoints</title>
|
|
<link rel="author" title="Brent Fulgham" href="bfulgham@apple.com">
|
|
<script src='/resources/testharness.js'></script>
|
|
<script src='/resources/testharnessreport.js'></script>
|
|
<script src="/resources/testdriver.js"></script>
|
|
<script src="/resources/testdriver-vendor.js"></script>
|
|
<script src='resources/report-helper.js'></script>
|
|
</head>
|
|
<body>
|
|
<script>
|
|
const base_url = `${location.protocol}//${location.host}`;
|
|
const endpoint = `${base_url}/reporting/resources/report.py`;
|
|
const id = '41534b09-65b2-498a-9fd3-104281ed63ce';
|
|
|
|
function checkReportIsValid(reports, type, url) {
|
|
for (const report of reports) {
|
|
if (report.type !== type) continue;
|
|
if (report.url.endsWith("reporting/generateTestReport-honors-endpoint.https.sub.html"))
|
|
return true;
|
|
}
|
|
assert_unreached(`A report of ${type} from ${url} was not found.`);
|
|
}
|
|
|
|
async_test(function(test) {
|
|
var observer = new ReportingObserver(function(reports) {
|
|
test.step(function() {
|
|
assert_equals(reports.length, 1);
|
|
// Ensure that the contents of the report are valid.
|
|
assert_equals(reports[0].type, "test");
|
|
assert_true(reports[0].url.endsWith("reporting/generateTestReport-honors-endpoint.https.sub.html"));
|
|
assert_equals(reports[0].body.message, "Test message.");
|
|
});
|
|
test.done();
|
|
});
|
|
observer.observe();
|
|
|
|
// This should result in a "test" type report being generated and observed.
|
|
test_driver.generate_test_report("Test message.")
|
|
.catch(test.unreached_func('generate test report failed'));
|
|
}, "Generate Test Report");
|
|
|
|
promise_test(async t => {
|
|
const reports = await pollReports(endpoint, id);
|
|
checkReportIsValid(reports, 'test', location.href);
|
|
}, "Reporting-Endpoints target received the test report.");
|
|
</script>
|
|
</body>
|
|
</html> |