4 Test for bug
1612649: We don't reframe for lazy load image state changes.
6 <div id=
"spacer" style=
"height: calc(100vh + 100px);"></div>
7 <img id=
"image" loading=
"lazy" width=
"20" height=
"20" alt=
"this is an image"
8 src=
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAIAAAAC64paAAAAG0lEQVR42mP8z0A%2BYKJA76jmUc2jmkc1U0EzACKcASfOgGoMAAAAAElFTkSuQmCC">
10 const is
= opener
.is
.bind(opener
);
11 const add_task
= opener
.add_task
;
12 const original_finish
= opener
.SimpleTest
.finish
;
13 const SimpleTest
= opener
.SimpleTest
;
14 SimpleTest
.finish
= function finish() {
19 const utils
= SpecialPowers
.DOMWindowUtils
;
21 add_task(async () => {
22 await SimpleTest
.promiseFocus();
24 const previousConstructCount
= utils
.framesConstructed
;
26 const loadPromise
= image
.complete
28 : new Promise(resolve
=> image
.addEventListener("load", resolve
));
30 image
.scrollIntoView();
34 image
.getBoundingClientRect();
36 is(previousConstructCount
, utils
.framesConstructed
,
37 "We should not have reframed");