chromium/third_party/blink/web_tests/compositing/reflections/animation-inside-reflection.html

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <style>
  .outer {
    width: 120px;
    height: 240px;
    margin: 20px;
    border: 1px solid black;
    -webkit-box-reflect: right 10px;
    opacity:0.95;
  }

  .inner {
    margin: 10px;
    width: 100px;
    height: 100px;
    text-align: center;
    font-size: 50pt;
    border: 2px solid blue;
    -webkit-box-reflect: below 10px;
    opacity:0.95;
  }

  #animated {
    margin: 10px;
    width: 80px;
    height: 80px;
    background-color: green;
  }

  #animated.animated {
    animation: swing 10s linear 1;
  }

  /* for manual testing */
  #animated:hover {
    animation-play-state: paused;
  }

  .composited {
    will-change: transform;
  }

  @keyframes swing {
    from { transform: rotate(0deg); }
    to   { transform: rotate(900deg); }
  }
  </style>
  <script src="../../animations/resources/animation-test-helpers.js" type="text/javascript" charset="utf-8"></script>
  <script type="text/javascript" charset="utf-8">
    const expectedValues = [
      // [time, element-id, property, expected-value, tolerance]
      [0.5, "animated", "webkitTransform.0", 0.76, 0.1],
    ];

    var pixelTest = true;
    var disablePauseAPI = false;
    runAnimationTest(expectedValues, null, null, disablePauseAPI, pixelTest);
  </script>
  </head>
<body>
  <p>The top left box, and all reflections should be rotated 45deg.</p>
  <div class="outer">
    <div id="inner" class="inner">
      <div id="animated" class="animated"></div>
    </div>
  </div>
  <div id="result"></div>
</body>
</html>