summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/largest-contentful-paint/animated/observe-animated-image.tentative.html
blob: cf7d262b0f842a020fa9ee94fd05669c62d1edd0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<!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();
      // 262 is the size of the animated PNG up until the first frame,
      // including the chunk that starts the second frame (indicating that
      // the first frame data is done).
      // The trickle pipe delays the response after the first frame by 1 second.
      const url = window.location.origin +
                  `/images/anim-gr.png?pipe=trickle(262:d${delay_pipe_value})`;
      const entry = await load_and_observe(url);
      // anim-gr.png 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>