chromium/third_party/blink/web_tests/external/wpt/css/css-highlight-api/painting/invalidation/css-highlight-invalidation-001.html

<!DOCTYPE html>
<html class="reftest-wait">
<meta charset="utf-8">
<title>CSS Highlight API Test: ::highlight dynamic change text-decoration</title>
<link rel="help" href="https://drafts.csswg.org/css-highlight-api-1/">
<link rel="match" href="css-highlight-invalidation-001-ref.html">
<meta name="assert" content="This test checks that it's possible to modify dynamically the text-decoration of a custom highlight through ::highlight pseudo-element.">
<meta name="fuzzy" content="0-56;0-10">
<script src="/common/reftest-wait.js"></script>
<style>
  ::highlight(example) {
    text-decoration: wavy underline overline green 5px;
    text-underline-offset: 20px;
  }
  div {
    border: solid 1px black;
    padding: 50px;
  }
</style>
<div id="upper">This line starts with under/over lines that remain.</div>
<div id="lower">This line starts with under/over lines that are removed.</div>
<script>
  let range_upper = new Range();
  range_upper.setStart(upper, 0);
  range_upper.setEnd(upper, 1);
  let range_lower = new Range();
  range_lower.setStart(lower, 0);
  range_lower.setEnd(lower, 1);
  CSS.highlights.set(`example`, new Highlight(range_lower));

  requestAnimationFrame(() => requestAnimationFrame(() => {
    CSS.highlights.set(`example`, new Highlight(range_upper));
    requestAnimationFrame(() => takeScreenshot());
  }));
</script>
</html>