<!DOCTYPE html>

<html>
<head>
  <style>
    .container {
      height: 200px;
      width: 200px;
      margin: 10px;
      border: 1px solid black;
      -webkit-perspective: 500px;
    }
    
    .container:hover {
      -webkit-transform: translateX(0);
    }
    
    .box {
      width: 100px;
      height: 100px;
      margin: 50px;
      background-color: blue;
      opacity: 0.5;
    }
  </style>
  <script>
    if (window.testRunner)
      testRunner.dumpAsText();
    
    function doTest()
    {
      if (!window.eventSender)
        return;
        
      eventSender.mouseMoveTo(5, 5);
      document.body.offsetTop;
      eventSender.mouseMoveTo(6, 6);

      eventSender.mouseMoveTo(50, 50);
      document.body.offsetTop;
      eventSender.mouseMoveTo(51, 51);
    }

    window.addEventListener('load', doTest, false);
  </script>
</head>
<body>
  <p>This test should not assert in debug builds.</p>
  <div class="container">
    <div class="box"></div>
  </div>
</body>
</html>
