mirror of
https://github.com/servo/servo.git
synced 2025-10-16 16:29:18 +01:00
43 lines
1.5 KiB
HTML
43 lines
1.5 KiB
HTML
<!doctype html>
|
|
<html>
|
|
<head>
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
</head>
|
|
<body>
|
|
<script>
|
|
const test_object_entry = (url, type, test_name) => {
|
|
promise_test(t => {
|
|
return new Promise((resolve, reject) => {
|
|
performance.clearResourceTimings();
|
|
const el = document.createElement("object");
|
|
const po = new PerformanceObserver(t.step_func(e => {
|
|
const entries = e.getEntriesByType("resource");
|
|
assert_greater_than(entries.length, 0, "Got a performance entry");
|
|
|
|
assert_true(entries[0].name.includes(url), "Performance resource timing entry has the right name");
|
|
po.disconnect();
|
|
resolve();
|
|
}));
|
|
po.observe({type: "resource"});
|
|
el.data = url;
|
|
if (type) {
|
|
el.type = type;
|
|
}
|
|
el.style = "width: 0px; height: 0px;";
|
|
document.body.appendChild(el);
|
|
|
|
el.onload = el.onerror = t.step_timeout(() => {
|
|
assert_unreached("No performance entry was observed");
|
|
reject();
|
|
}, 500);
|
|
});
|
|
}, test_name);
|
|
|
|
};
|
|
|
|
test_object_entry("resources/status-code.py?status=404&type=none", null, "Test that an navigation object with a 404 response displays an entry");
|
|
test_object_entry("resources/status-code.py?status=200&type=none", null, "Test that an navigation object with a 200 response displays an entry");
|
|
test_object_entry("resources/status-code.py?status=404&type=img", "image/png", "Test that an image object with a 404 response displays an entry");
|
|
|
|
</script>
|