Diff
Modified: trunk/LayoutTests/ChangeLog (203320 => 203321)
--- trunk/LayoutTests/ChangeLog 2016-07-16 04:16:30 UTC (rev 203320)
+++ trunk/LayoutTests/ChangeLog 2016-07-16 04:17:21 UTC (rev 203321)
@@ -1,3 +1,27 @@
+2016-07-15 Benjamin Poulain <[email protected]>
+
+ [mac] LayoutTest fast/css/ancestor-of-hovered-element-detached.html is flaky
+ https://bugs.webkit.org/show_bug.cgi?id=159173
+
+ Reviewed by Alexey Proskuryakov.
+
+ The test ancestor-of-hovered-element-detached.html is not reliably
+ covering r202324.
+
+ In the case of that test, the first style update is done with
+ the flag TeardownType::KeepHoverAndActive. This keeps the ":hover" state
+ set despite the subtree losing their renderer.
+ This looks like a serious issue that should be tested separately.
+
+ * fast/css/ancestor-of-hovered-element-removed.html:
+ The :hover update timer is actually a zero timer.
+ It is reasonable to expect a full update after one frame update.
+
+ * fast/css/ancestor-of-hovered-element-detached-expected.txt: Removed.
+ * fast/css/ancestor-of-hovered-element-detached.html: Removed.
+ * platform/ios-simulator/TestExpectations:
+ * platform/mac/TestExpectations:
+
2016-07-15 Myles C. Maxfield <[email protected]>
Test gardening after r203314
Deleted: trunk/LayoutTests/fast/css/ancestor-of-hovered-element-detached-expected.txt (203320 => 203321)
--- trunk/LayoutTests/fast/css/ancestor-of-hovered-element-detached-expected.txt 2016-07-16 04:16:30 UTC (rev 203320)
+++ trunk/LayoutTests/fast/css/ancestor-of-hovered-element-detached-expected.txt 2016-07-16 04:17:21 UTC (rev 203321)
@@ -1,16 +0,0 @@
-Verify the hovered state is updated correctly when an ancestor of the hovered element loses its renderer
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
- Initial state
-PASS elementsWithHoverStyle() is ["html", "body", "prime-ancestor"]
-PASS elementsMatchingHoverSelector() is ["html", "body", "prime-ancestor"]
-Moving over #target
-PASS elementsWithHoverStyle() is ["html", "body", "prime-ancestor", "group", "element-to-remove", "target"]
-PASS elementsMatchingHoverSelector() is ["html", "body", "prime-ancestor", "group", "element-to-remove", "target"]
-Removing the renderer of #element-to-remove
-PASS elementsWithHoverStyle() is ["html", "body", "prime-ancestor", "interceptor"]
-PASS elementsMatchingHoverSelector() is ["html", "body", "prime-ancestor", "interceptor"]
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
Deleted: trunk/LayoutTests/fast/css/ancestor-of-hovered-element-detached.html (203320 => 203321)
--- trunk/LayoutTests/fast/css/ancestor-of-hovered-element-detached.html 2016-07-16 04:16:30 UTC (rev 203320)
+++ trunk/LayoutTests/fast/css/ancestor-of-hovered-element-detached.html 2016-07-16 04:17:21 UTC (rev 203321)
@@ -1,98 +0,0 @@
-<!DOCTYPE html>
-<html id="html">
-<head>
-<style>
- * {
- background-color: white;
- margin: 0;
- padding: 0;
- }
- :hover {
- background-color: rgb(50, 100, 150) !important;
- }
- #prime-ancestor >> div {
- width: 100px;
- height: 100px;
- }
- #target {
- width: 100px;
- height: 100px;
- background-color: green;
- position: absolute;
- left: 100px;
- }
- #interceptor {
- position: absolute;
- left: 100px;
- }
-</style>
-</head>
-<script src=""
-<body id="body">
- <div id="prime-ancestor">
- <div id="interceptor">
- </div>
- <div id="group">
- <div id="element-to-remove">
- <div id="target">
- </div>
- </div>
- </div>
- </div>
- <div id="console">
- </div>
- <script>
- description("Verify the hovered state is updated correctly when an ancestor of the hovered element loses its renderer");
- window.jsTestIsAsync = true;
-
- function elementsWithHoverStyle() {
- let elements = [];
- for (let element of document.querySelectorAll("*")) {
- if (getComputedStyle(element).backgroundColor === "rgb(50, 100, 150)")
- elements.push(element.id);
- }
- return elements;
- }
- function elementsMatchingHoverSelector() {
- let elements = [];
- for (let element of document.querySelectorAll(":hover")) {
- elements.push(element.id);
- }
- return elements;
- }
-
- if (!window.eventSender) {
- debug("This test requires eventSender");
- }
- eventSender.mouseMoveTo(300, 50);
- {
- // See https://bugs.webkit.org/show_bug.cgi?id=74264
- eventSender.mouseDown()
- eventSender.mouseUp()
- }
-
- debug("Initial state");
- shouldBe('elementsWithHoverStyle()', '["html", "body", "prime-ancestor"]');
- shouldBe('elementsMatchingHoverSelector()', '["html", "body", "prime-ancestor"]');
-
- debug("Moving over #target")
- eventSender.mouseMoveTo(150, 50);
- shouldBe('elementsWithHoverStyle()', '["html", "body", "prime-ancestor", "group", "element-to-remove", "target"]');
- shouldBe('elementsMatchingHoverSelector()', '["html", "body", "prime-ancestor", "group", "element-to-remove", "target"]');
-
- debug("Removing the renderer of #element-to-remove");
- var elementToRemove = document.getElementById("element-to-remove");
- elementToRemove.style.display = "none";
- // Force layout.
- offsetTop = elementToRemove.offsetTop;
-
- // hover updates happen on timer.
- setTimeout(function() {
- shouldBe('elementsWithHoverStyle()', '["html", "body", "prime-ancestor", "interceptor"]');
- shouldBe('elementsMatchingHoverSelector()', '["html", "body", "prime-ancestor", "interceptor"]');
- finishJSTest();
- }, 125);
- </script>
- <script src=""
-</body>
-</html>
Modified: trunk/LayoutTests/fast/css/ancestor-of-hovered-element-removed.html (203320 => 203321)
--- trunk/LayoutTests/fast/css/ancestor-of-hovered-element-removed.html 2016-07-16 04:16:30 UTC (rev 203320)
+++ trunk/LayoutTests/fast/css/ancestor-of-hovered-element-removed.html 2016-07-16 04:17:21 UTC (rev 203321)
@@ -93,7 +93,7 @@
shouldBe('elementsWithHoverStyle()', '["html", "body", "prime-ancestor", "interceptor"]');
shouldBe('elementsMatchingHoverSelector()', '["html", "body", "prime-ancestor", "interceptor"]');
finishJSTest();
- }, 125);
+ }, 17);
</script>
<script src=""
</body>
Modified: trunk/LayoutTests/platform/ios-simulator/TestExpectations (203320 => 203321)
--- trunk/LayoutTests/platform/ios-simulator/TestExpectations 2016-07-16 04:16:30 UTC (rev 203320)
+++ trunk/LayoutTests/platform/ios-simulator/TestExpectations 2016-07-16 04:17:21 UTC (rev 203321)
@@ -1412,7 +1412,6 @@
fast/clip/clip-when-rect-has-fractional-pixel-value.html [ ImageOnlyFailure ]
fast/css-generated-content/table-parts-before-and-after.html [ Failure ]
fast/css/absolute-child-with-percent-height-inside-relative-parent.html [ Failure ]
-fast/css/ancestor-of-hovered-element-detached.html [ Failure ]
fast/css/ancestor-of-hovered-element-removed.html [ Failure ]
fast/css/background-image-with-baseurl.html [ Failure ]
fast/css/button-height.html [ Failure ]
Modified: trunk/LayoutTests/platform/mac/TestExpectations (203320 => 203321)
--- trunk/LayoutTests/platform/mac/TestExpectations 2016-07-16 04:16:30 UTC (rev 203320)
+++ trunk/LayoutTests/platform/mac/TestExpectations 2016-07-16 04:17:21 UTC (rev 203321)
@@ -1449,6 +1449,4 @@
webkit.org/b/158500 storage/indexeddb/database-close-private.html [ Pass Failure ]
-webkit.org/b/159173 fast/css/ancestor-of-hovered-element-detached.html [ Pass Failure ]
-
webkit.org/b/158640 imported/blink/storage/indexeddb/blob-valid-after-deletion.html [ Pass Failure ]