<!DOCTYPE html>
<html>
<head>
<title>Background image-set images should be LCP candidates</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<style>
.background {
width: calc(100vw - 40px);
height: calc(100vw - 40px);
max-width: 100px;
max-height: 100px;
background: #eee image-set('/images/lcp-100x50.png' type('image/png')) center center no-repeat;
background-size: cover;
}
</style>
</head>
<body>
<div class="background"></div>
<p>fallback</p>
<script>
promise_test(async (t) => {
t.step_timeout(async () => {
let lcpEntryNames =
await new Promise(resolve => {
new PerformanceObserver((list) => {
resolve(list.getEntries().map(e => e.url));
}).observe({ type: "largest-contentful-paint", buffered: true });
});
assert_true(lcpEntryNames.find(e => e.includes('lcp-100x50')),
'Background image-set image should be an LCP candidate.');
}, 100);
}, "Background image-set images should be eligible for LCP candidates");
</script>
</body>
</html>