Split iOS tests for hit testing in iframes
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 25 Feb 2019 19:22:15 +0000 (19:22 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 25 Feb 2019 19:22:15 +0000 (19:22 +0000)
https://bugs.webkit.org/show_bug.cgi?id=195003

This patch splits hit-testing-iframe.html into smaller tests to faciliate
debugging and handling of test expectations. It also adds a new test
for programmatic scrolling which was fixed after bug 194886.

Patch by Frederic Wang <fwang@igalia.com> on 2019-02-25
Reviewed by Antti Koivisto.

* fast/scrolling/ios/hit-testing-iframe-001-expected.html: Copied from LayoutTests/fast/scrolling/ios/hit-testing-iframe-expected.html.
* fast/scrolling/ios/hit-testing-iframe-001.html: Added.
* fast/scrolling/ios/hit-testing-iframe-002-expected.html: Copied from LayoutTests/fast/scrolling/ios/hit-testing-iframe-expected.html.
* fast/scrolling/ios/hit-testing-iframe-002.html: Added.
* fast/scrolling/ios/hit-testing-iframe-003-expected.html: Copied from LayoutTests/fast/scrolling/ios/hit-testing-iframe-expected.html.
* fast/scrolling/ios/hit-testing-iframe-003.html: Added.
* fast/scrolling/ios/hit-testing-iframe-004-expected.html: Copied from LayoutTests/fast/scrolling/ios/hit-testing-iframe-expected.html.
* fast/scrolling/ios/hit-testing-iframe-004.html: Added.
* fast/scrolling/ios/hit-testing-iframe-005-expected.html: Copied from LayoutTests/fast/scrolling/ios/hit-testing-iframe-expected.html.
* fast/scrolling/ios/hit-testing-iframe-005.html: Added.
* fast/scrolling/ios/hit-testing-iframe-006-expected.html: Renamed from LayoutTests/fast/scrolling/ios/hit-testing-iframe-expected.html.
* fast/scrolling/ios/hit-testing-iframe-006.html: Added.
* fast/scrolling/ios/hit-testing-iframe.html: Removed.
* platform/ios-wk2/TestExpectations: Set failure to the corresponding extracted test.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@242052 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 files changed:
LayoutTests/ChangeLog
LayoutTests/fast/scrolling/ios/hit-testing-iframe-001-expected.html [moved from LayoutTests/fast/scrolling/ios/hit-testing-iframe-expected.html with 64% similarity]
LayoutTests/fast/scrolling/ios/hit-testing-iframe-001.html [new file with mode: 0644]
LayoutTests/fast/scrolling/ios/hit-testing-iframe-002-expected.html [new file with mode: 0644]
LayoutTests/fast/scrolling/ios/hit-testing-iframe-002.html [new file with mode: 0644]
LayoutTests/fast/scrolling/ios/hit-testing-iframe-003-expected.html [new file with mode: 0644]
LayoutTests/fast/scrolling/ios/hit-testing-iframe-003.html [new file with mode: 0644]
LayoutTests/fast/scrolling/ios/hit-testing-iframe-004-expected.html [new file with mode: 0644]
LayoutTests/fast/scrolling/ios/hit-testing-iframe-004.html [new file with mode: 0644]
LayoutTests/fast/scrolling/ios/hit-testing-iframe-005-expected.html [new file with mode: 0644]
LayoutTests/fast/scrolling/ios/hit-testing-iframe-005.html [new file with mode: 0644]
LayoutTests/fast/scrolling/ios/hit-testing-iframe-006-expected.html [new file with mode: 0644]
LayoutTests/fast/scrolling/ios/hit-testing-iframe-006.html [new file with mode: 0644]
LayoutTests/fast/scrolling/ios/hit-testing-iframe.html [deleted file]
LayoutTests/platform/ios-wk2/TestExpectations

index 7347be9..f2e31c8 100644 (file)
@@ -1,3 +1,29 @@
+2019-02-25  Frederic Wang  <fwang@igalia.com>
+
+        Split iOS tests for hit testing in iframes
+        https://bugs.webkit.org/show_bug.cgi?id=195003
+
+        This patch splits hit-testing-iframe.html into smaller tests to faciliate
+        debugging and handling of test expectations. It also adds a new test
+        for programmatic scrolling which was fixed after bug 194886.
+
+        Reviewed by Antti Koivisto.
+
+        * fast/scrolling/ios/hit-testing-iframe-001-expected.html: Copied from LayoutTests/fast/scrolling/ios/hit-testing-iframe-expected.html.
+        * fast/scrolling/ios/hit-testing-iframe-001.html: Added.
+        * fast/scrolling/ios/hit-testing-iframe-002-expected.html: Copied from LayoutTests/fast/scrolling/ios/hit-testing-iframe-expected.html.
+        * fast/scrolling/ios/hit-testing-iframe-002.html: Added.
+        * fast/scrolling/ios/hit-testing-iframe-003-expected.html: Copied from LayoutTests/fast/scrolling/ios/hit-testing-iframe-expected.html.
+        * fast/scrolling/ios/hit-testing-iframe-003.html: Added.
+        * fast/scrolling/ios/hit-testing-iframe-004-expected.html: Copied from LayoutTests/fast/scrolling/ios/hit-testing-iframe-expected.html.
+        * fast/scrolling/ios/hit-testing-iframe-004.html: Added.
+        * fast/scrolling/ios/hit-testing-iframe-005-expected.html: Copied from LayoutTests/fast/scrolling/ios/hit-testing-iframe-expected.html.
+        * fast/scrolling/ios/hit-testing-iframe-005.html: Added.
+        * fast/scrolling/ios/hit-testing-iframe-006-expected.html: Renamed from LayoutTests/fast/scrolling/ios/hit-testing-iframe-expected.html.
+        * fast/scrolling/ios/hit-testing-iframe-006.html: Added.
+        * fast/scrolling/ios/hit-testing-iframe.html: Removed.
+        * platform/ios-wk2/TestExpectations: Set failure to the corresponding extracted test.
+
 2019-02-25  Chris Fleizach  <cfleizach@apple.com>
 
         AX: <footer> HTML5 tag not reading as ARIA Landmark to VoiceOver
@@ -5,7 +5,7 @@
   </head>
   <body>
     <p>This test passes if you see a green rectangle.</p>
-    <div style="position: absolute; top: 3em; width: 300px; height: 200px; background: green;">
+    <div style="position: absolute; top: 3em; width: 100px; height: 100px; background: green;">
     </div>
 </body>
 </html>
diff --git a/LayoutTests/fast/scrolling/ios/hit-testing-iframe-001.html b/LayoutTests/fast/scrolling/ios/hit-testing-iframe-001.html
new file mode 100644 (file)
index 0000000..120c98b
--- /dev/null
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <title>Hit testing of iframe</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <script src="../../../resources/basic-gestures.js"></script>
+    <script type="text/javascript">
+      if (window.testRunner)
+          testRunner.waitUntilDone();
+      if (window.internals)
+          internals.settings.setAsyncFrameScrollingEnabled(true);
+
+      async function runTest() {
+          if (!window.testRunner || !testRunner.runUIScript)
+              return;
+
+          // This verifies whether the iframe handles clicks inside its content box.
+          var p = document.getElementById("clickInContentBox").getBoundingClientRect();
+          await tapAtPoint(p.left + 7, p.top + 7);
+          testRunner.notifyDone();
+      }
+    </script>
+    <style>
+        iframe {
+            position: absolute;
+            height: 90px;
+            width: 90px;
+            overflow: none;
+            margin: 0;
+            border: 0;
+            padding: 5px;
+        }
+    </style>
+  </head>
+  <body>
+    <p>This test passes if you see a green rectangle.</p>
+    <div style="position: absolute; top: 3em; width: 100px; height: 100px; background: green;">
+      <iframe id="clickInContentBox" style="left: 0px; top: 0px;" scrolling="yes" onclick="this.style.background='red'" srcdoc="
+          <body style='margin: 0; width: 200px; height: 200px'>
+              <div style='position: absolute; width: 100px; height: 100px; background: red;'
+                   onclick='this.style.background=&quot;green&quot;'></div>
+          </body>" onload="runTest()">
+      </iframe>
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/scrolling/ios/hit-testing-iframe-002-expected.html b/LayoutTests/fast/scrolling/ios/hit-testing-iframe-002-expected.html
new file mode 100644 (file)
index 0000000..74d42a9
--- /dev/null
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html
+  <head>
+    <title>Hit testing of iframe</title>
+  </head>
+  <body>
+    <p>This test passes if you see a green rectangle.</p>
+    <div style="position: absolute; top: 3em; width: 100px; height: 100px; background: green;">
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/scrolling/ios/hit-testing-iframe-002.html b/LayoutTests/fast/scrolling/ios/hit-testing-iframe-002.html
new file mode 100644 (file)
index 0000000..0676138
--- /dev/null
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <title>Hit testing of iframe</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <script src="../../../resources/basic-gestures.js"></script>
+    <script type="text/javascript">
+      if (window.testRunner)
+          testRunner.waitUntilDone();
+      if (window.internals)
+          internals.settings.setAsyncFrameScrollingEnabled(true);
+
+      async function runTest() {
+          if (!window.testRunner || !testRunner.runUIScript)
+              return;
+
+          // This verifies whether the iframe handles clicks outside its content box.
+          var p = document.getElementById("clickInPaddingBoxOutOfContentBox").getBoundingClientRect();
+          await tapAtPoint(p.left + 3, p.top + 3);
+          testRunner.notifyDone();
+      }
+    </script>
+    <style>
+        iframe {
+            position: absolute;
+            height: 90px;
+            width: 90px;
+            overflow: none;
+            margin: 0;
+            border: 0;
+            padding: 5px;
+        }
+    </style>
+  </head>
+  <body>
+    <p>This test passes if you see a green rectangle.</p>
+    <div style="position: absolute; top: 3em; width: 100px; height: 100px; background: green;">
+      <iframe id="clickInPaddingBoxOutOfContentBox" style="left: 0px; top: 0px; background: red;" onclick="this.style.background='green'" scrolling="yes" srcdoc="
+          <body style='margin: 0; width: 200px; height: 200px'>
+              <div style='position: absolute; width: 100px; height: 100px; background: green;'
+                   onclick='this.style.background=&quot;red&quot;'></div>
+          </body>" onload="runTest()">
+      </iframe>
+    </div>
+  </body>
+</html>
diff --git a/LayoutTests/fast/scrolling/ios/hit-testing-iframe-003-expected.html b/LayoutTests/fast/scrolling/ios/hit-testing-iframe-003-expected.html
new file mode 100644 (file)
index 0000000..74d42a9
--- /dev/null
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html
+  <head>
+    <title>Hit testing of iframe</title>
+  </head>
+  <body>
+    <p>This test passes if you see a green rectangle.</p>
+    <div style="position: absolute; top: 3em; width: 100px; height: 100px; background: green;">
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/scrolling/ios/hit-testing-iframe-003.html b/LayoutTests/fast/scrolling/ios/hit-testing-iframe-003.html
new file mode 100644 (file)
index 0000000..63c5b14
--- /dev/null
@@ -0,0 +1,47 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <title>Hit testing of iframe</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <script src="../../../resources/basic-gestures.js"></script>
+    <script type="text/javascript">
+      if (window.testRunner)
+          testRunner.waitUntilDone();
+      if (window.internals)
+          internals.settings.setAsyncFrameScrollingEnabled(true);
+
+      async function runTest() {
+          if (!window.testRunner || !testRunner.runUIScript)
+              return;
+
+          // This verifies that a click event is consumed by the element on top the frame.
+          var p = document.getElementById("clickElementAboveFrame").getBoundingClientRect();
+          await tapAtPoint(p.left + 50, p.top + 50);
+          testRunner.notifyDone();
+      }
+    </script>
+    <style>
+        iframe {
+            position: absolute;
+            height: 90px;
+            width: 90px;
+            overflow: none;
+            margin: 0;
+            border: 0;
+            padding: 5px;
+        }
+    </style>
+  </head>
+  <body>
+    <p>This test passes if you see a green rectangle.</p>
+    <div style="position: absolute; top: 3em; width: 100px; height: 100px; background: green;">
+      <iframe id="clickElementAboveFrame" style="left: 0px; top: 0px;" scrolling="yes" onclick="this.style.background='red'" srcdoc="
+          <body style='margin: 0; width: 200px; height: 200px; background: green;'>
+              <div style='position: absolute; width: 100px; height: 100px; background: green;'
+                   onclick='this.style.background=&quot;red&quot;'></div>
+          </body>" onload="runTest()">
+      </iframe>
+      <div style="position: absolute; width: 50px; height: 50px; left: 25px; top: 25px; background: red" onclick="this.style.background='green';"></div>
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/scrolling/ios/hit-testing-iframe-004-expected.html b/LayoutTests/fast/scrolling/ios/hit-testing-iframe-004-expected.html
new file mode 100644 (file)
index 0000000..74d42a9
--- /dev/null
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html
+  <head>
+    <title>Hit testing of iframe</title>
+  </head>
+  <body>
+    <p>This test passes if you see a green rectangle.</p>
+    <div style="position: absolute; top: 3em; width: 100px; height: 100px; background: green;">
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/scrolling/ios/hit-testing-iframe-004.html b/LayoutTests/fast/scrolling/ios/hit-testing-iframe-004.html
new file mode 100644 (file)
index 0000000..90a21c8
--- /dev/null
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <title>Hit testing of iframe</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <script src="../../../resources/basic-gestures.js"></script>
+    <script type="text/javascript">
+      if (window.testRunner)
+          testRunner.waitUntilDone();
+      if (window.internals)
+          internals.settings.setAsyncFrameScrollingEnabled(true);
+
+      async function runTest() {
+          if (!window.testRunner || !testRunner.runUIScript)
+              return;
+
+          // This verifies that a click event is consumed by an element inside the frame.
+          var p = document.getElementById("clickElementInsideFrame").getBoundingClientRect();
+          await tapAtPoint(p.left + 7 + 10, p.top + 7 + 10);
+          testRunner.notifyDone();
+       }
+    </script>
+    <style>
+        iframe {
+            position: absolute;
+            height: 90px;
+            width: 90px;
+            overflow: none;
+            margin: 0;
+            border: 0;
+            padding: 5px;
+        }
+    </style>
+  </head>
+  <body>
+    <p>This test passes if you see a green rectangle.</p>
+    <div style="position: absolute; top: 3em; width: 100px; height: 100px; background: green;">
+      <iframe id="clickElementInsideFrame" style="left: 0px; top: 0px;" scrolling="yes" onclick="this.style.background='red'" srcdoc="
+          <body style='margin: 0; width: 200px; height: 200px; background: green;'>
+              <div style='position: absolute; left: 10px; top: 10px; width: 50px; height: 50px; background: red;'
+                   onclick='this.style.background=&quot;green&quot;'></div>
+          </body>" onload="runTest()">
+      </iframe>
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/scrolling/ios/hit-testing-iframe-005-expected.html b/LayoutTests/fast/scrolling/ios/hit-testing-iframe-005-expected.html
new file mode 100644 (file)
index 0000000..74d42a9
--- /dev/null
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html
+  <head>
+    <title>Hit testing of iframe</title>
+  </head>
+  <body>
+    <p>This test passes if you see a green rectangle.</p>
+    <div style="position: absolute; top: 3em; width: 100px; height: 100px; background: green;">
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/scrolling/ios/hit-testing-iframe-005.html b/LayoutTests/fast/scrolling/ios/hit-testing-iframe-005.html
new file mode 100644 (file)
index 0000000..d6d7d46
--- /dev/null
@@ -0,0 +1,49 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <title>Hit testing of iframe</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <script src="../../../resources/basic-gestures.js"></script>
+    <script type="text/javascript">
+      if (window.testRunner)
+          testRunner.waitUntilDone();
+      if (window.internals)
+          internals.settings.setAsyncFrameScrollingEnabled(true);
+
+      async function runTest() {
+          if (!window.testRunner || !testRunner.runUIScript)
+              return;
+
+          // This verifies that a click event is consumed by an element inside the frame, after a programmatic scroll.
+          var frame = document.getElementById("clickElementInsideFrameAfterProgrammaticScroll");
+         frame.contentWindow.window.scrollTo(100, 100);
+          var p = frame.getBoundingClientRect();
+          await tapAtPoint(p.left + 7 + 10, p.top + 7 + 10);
+          testRunner.notifyDone();
+      }
+    </script>
+    <style>
+        iframe {
+            position: absolute;
+            height: 90px;
+            width: 90px;
+            overflow: none;
+            margin: 0;
+            border: 0;
+            padding: 5px;
+        }
+    </style>
+  </head>
+  <body>
+    <p>This test passes if you see a green rectangle.</p>
+    <div style="position: absolute; top: 3em; width: 100px; height: 100px; background: green;">
+      <iframe id="clickElementInsideFrameAfterProgrammaticScroll" style="left: 0px; top: 0px;" scrolling="yes" onclick="this.style.background='red'" srcdoc="
+          <body style='margin: 0; width: 200px; height: 200px; background: green;'>
+             <div style='position: absolute; width: 75px; height: 75px; background: red;'></div>
+              <div style='position: absolute; left: 110px; top: 110px; width: 50px; height: 50px; background: red;'
+                   onclick='this.style.background=&quot;green&quot;'></div>
+          </body>" onload="runTest()">
+      </iframe>
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/scrolling/ios/hit-testing-iframe-006-expected.html b/LayoutTests/fast/scrolling/ios/hit-testing-iframe-006-expected.html
new file mode 100644 (file)
index 0000000..74d42a9
--- /dev/null
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html
+  <head>
+    <title>Hit testing of iframe</title>
+  </head>
+  <body>
+    <p>This test passes if you see a green rectangle.</p>
+    <div style="position: absolute; top: 3em; width: 100px; height: 100px; background: green;">
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/scrolling/ios/hit-testing-iframe-006.html b/LayoutTests/fast/scrolling/ios/hit-testing-iframe-006.html
new file mode 100644 (file)
index 0000000..b87a6fc
--- /dev/null
@@ -0,0 +1,57 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <title>Hit testing of iframe</title>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <script src="../../../resources/basic-gestures.js"></script>
+    <script type="text/javascript">
+      if (window.testRunner)
+          testRunner.waitUntilDone();
+      if (window.internals)
+          internals.settings.setAsyncFrameScrollingEnabled(true);
+
+      function waitPromise(delay)
+      {
+          return new Promise((resolve) => { setTimeout(resolve, delay); });
+      }
+
+      async function runTest() {
+          if (!window.testRunner || !testRunner.runUIScript)
+              return;
+
+          // This verifies that a click event is consumed by an element inside the frame, after a user scroll.
+          var p = document.getElementById("clickElementInsideFrameAfterUserScroll").getBoundingClientRect();
+          await touchAndDragFromPointToPoint(p.left + 7, p.top + 7, p.left + 7, p.top - 150);
+          await liftUpAtPoint(p.left + 7, p.top - 150);
+          await waitPromise(1500); // Wait for scrolling to stabilize and for scrollbars to disappear.
+          await tapAtPoint(p.left + 7 + 10, p.bottom - 7);
+          await waitPromise(100);
+
+          testRunner.notifyDone();
+       }
+    </script>
+    <style>
+        iframe {
+            position: absolute;
+            height: 90px;
+            width: 90px;
+            overflow: none;
+            margin: 0;
+            border: 0;
+            padding: 5px;
+        }
+    </style>
+  </head>
+  <body>
+    <p>This test passes if you see a green rectangle.</p>
+    <div style="position: absolute; top: 3em; width: 100px; height: 100px; background: green;">
+      <iframe id="clickElementInsideFrameAfterUserScroll" style="left: 0px; top: 0px;" scrolling="yes" onclick="this.style.background='red'" srcdoc="
+          <body style='margin: 0; width: 200px; height: 200px; background: green;'>
+             <div style='position: absolute; width: 75px; height: 75px; background: red;'></div>
+              <div style='position: absolute; left: 0px; top: 150px; width: 50px; height: 50px; background: red;'
+                   onclick='this.style.background=&quot;green&quot;'></div>
+          </body>" onload="runTest()">
+      </iframe>
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/scrolling/ios/hit-testing-iframe.html b/LayoutTests/fast/scrolling/ios/hit-testing-iframe.html
deleted file mode 100644 (file)
index ba66e31..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-<!DOCTYPE html>
-<html>
-  <head>
-    <title>Hit testing of iframe</title>
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <script src="../../../resources/basic-gestures.js"></script>
-    <script type="text/javascript">
-        if (window.testRunner)
-            testRunner.waitUntilDone();
-        if (window.internals)
-            internals.settings.setAsyncFrameScrollingEnabled(true);
-
-      function frameBox(id)
-      {
-          return document.getElementById(id).getBoundingClientRect();
-      }
-
-      function waitPromise(delay)
-      {
-          return new Promise((resolve) => { setTimeout(resolve, delay); });
-      }
-
-      async function runTest() {
-         if (!window.testRunner || !testRunner.runUIScript)
-             return;
-
-         // This verifies whether the iframe handles clicks inside or ouside its content box.
-         var p = frameBox("clickInContentBox");
-         await tapAtPoint(p.left + 7, p.top + 7);
-         p = frameBox("clickInPaddingBoxOutOfContentBox");
-         await tapAtPoint(p.left + 3, p.top + 3);
-
-         // This verifies that a click event is consumed by the element on top the frame.
-         p = frameBox("clickElementAboveFrame");
-         await tapAtPoint(p.left + 50, p.top + 50);
-
-         // This verifies that a click event is consumed by an element inside the frame.
-         p = frameBox("clickElementInsideFrame");
-         await tapAtPoint(p.left + 7 + 10, p.top + 7 + 10);
-
-         // This verifies that a click event is consumed by an element inside the frame, after a user scroll.
-         p = frameBox("clickElementInsideFrameAfterUserScroll");
-         await touchAndDragFromPointToPoint(p.left + 7, p.top + 7, p.left + 7, p.top - 150);
-         await liftUpAtPoint(p.left + 7, p.top - 150);
-         await waitPromise(1500); // Wait for scrolling to stabilize and for scrollbars to disappear.
-         await tapAtPoint(p.left + 7 + 10, p.bottom - 7);
-         await waitPromise(100);
-
-         testRunner.notifyDone();
-       }
-
-       var frameToLoadCount = 5;
-       function newFrameLoaded() {
-           frameToLoadCount--;
-           if (frameToLoadCount == 0)
-               runTest();
-       }
-    </script>
-    <style>
-        iframe {
-            position: absolute;
-            height: 90px;
-            width: 90px;
-            overflow: none;
-            margin: 0;
-            border: 0;
-            padding: 5px;
-        }
-    </style>
-  </head>
-  <body>
-    <p>This test passes if you see a green rectangle.</p>
-    <div style="position: absolute; top: 3em; width: 300px; height: 200px; background: green;">
-      <iframe id="clickInContentBox" style="left: 0px; top: 0px;" scrolling="yes" onclick="this.style.background='red'" srcdoc="
-          <body style='margin: 0; width: 200px; height: 200px'>
-              <div style='position: absolute; width: 100px; height: 100px; background: red;'
-                   onclick='this.style.background=&quot;green&quot;'></div>
-          </body>" onload="newFrameLoaded()">
-      </iframe>
-      <iframe id="clickInPaddingBoxOutOfContentBox" style="left: 100px; top: 0px; background: red;" onclick="this.style.background='green'" scrolling="yes" srcdoc="
-          <body style='margin: 0; width: 200px; height: 200px'>
-              <div style='position: absolute; width: 100px; height: 100px; background: green;'
-                   onclick='this.style.background=&quot;red&quot;'></div>
-          </body>" onload="newFrameLoaded()">
-      </iframe>
-      <iframe id="clickElementAboveFrame" style="left: 200px; top: 0px;" scrolling="yes" onclick="this.style.background='red'" srcdoc="
-          <body style='margin: 0; width: 200px; height: 200px; background: green;'>
-              <div style='position: absolute; width: 100px; height: 100px; background: green;'
-                   onclick='this.style.background=&quot;red&quot;'></div>
-          </body>" onload="newFrameLoaded()">
-      </iframe>
-      <div style="position: absolute; width: 50px; height: 50px; left: 225px; top: 25px; background: red" onclick="this.style.background='green';"></div>
-      <iframe id="clickElementInsideFrame" style="left: 0px; top: 100px;" scrolling="yes" onclick="this.style.background='red'" srcdoc="
-          <body style='margin: 0; width: 200px; height: 200px; background: green;'>
-              <div style='position: absolute; left: 10px; top: 10px; width: 50px; height: 50px; background: red;'
-                   onclick='this.style.background=&quot;green&quot;'></div>
-          </body>" onload="newFrameLoaded()">
-      </iframe>
-      <iframe id="clickElementInsideFrameAfterUserScroll" style="left: 100px; top: 100px;" scrolling="yes" onclick="this.style.background='red'" srcdoc="
-          <body style='margin: 0; width: 200px; height: 200px; background: green;'>
-             <div style='position: absolute; width: 75px; height: 75px; background: red;'></div>
-              <div style='position: absolute; left: 0px; top: 150px; width: 50px; height: 50px; background: red;'
-                   onclick='this.style.background=&quot;green&quot;'></div>
-          </body>" onload="newFrameLoaded()">
-      </iframe>
-    </div>
-</body>
-</html>
index 769ccaf..bfd7a9a 100644 (file)
@@ -1075,7 +1075,7 @@ webkit.org/b/156620 legacy-animation-engine/fast/animation/request-animation-fra
 webkit.org/b/153049 perf/array-binary-search.html [ Pass Failure Timeout ]
 
 fast/scrolling/ios/scroll-events-back-forward-after-pageshow.html [ Pass Failure ]
-webkit.org/b/193997 fast/scrolling/ios/hit-testing-iframe.html [ ImageOnlyFailure ]
+webkit.org/b/193997 fast/scrolling/ios/hit-testing-iframe-006.html [ ImageOnlyFailure ]
 
 webkit.org/b/157589 fast/text-autosizing/ios/text-autosizing-after-back.html [ Pass Timeout ]