| <!DOCTYPE HTML> |
| <html> |
| <head> |
| <meta charset=utf-8> |
| <title>Largest Contentful Paint: observe image.</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="../resources/largest-contentful-paint-helpers.js"></script> |
| </head> |
| <body> |
| <script> |
| promise_test(async () => { |
| assert_implements(window.LargestContentfulPaint, |
| "LargestContentfulPaint is not implemented"); |
| const beforeLoad = performance.now(); |
| // 136 is the size of the animated GIF up until the first frame. |
| // The trickle pipe delays the response after the first frame by 1 second. |
| const url = window.location.origin + |
| `/images/anim-gr.gif?pipe=trickle(136:d${delay_pipe_value})`; |
| const entry = await load_and_observe(url); |
| // anim-gr.gif is 100 by 50. |
| const size = 100 * 50; |
| checkImage(entry, url, 'image_id', size, beforeLoad, ["animated"]); |
| }, "Same origin animated image is observable and has a first frame."); |
| </script> |
| </body> |
| </html> |