Title: [213595] trunk/LayoutTests
Revision
213595
Author
[email protected]
Date
2017-03-08 13:56:12 -0800 (Wed, 08 Mar 2017)

Log Message

[mac-wk1] LayoutTest media/modern-media-controls/airplay-button/airplay-button.html is a flaky timeout
https://bugs.webkit.org/show_bug.cgi?id=168409

Patch by Antoine Quint <[email protected]> on 2017-03-08
Reviewed by Dean Jackson.

Adding more detailed assertions to try to understand where the timeouts might be coming from.

* media/modern-media-controls/airplay-button/airplay-button-expected.txt:
* media/modern-media-controls/airplay-button/airplay-button.html:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (213594 => 213595)


--- trunk/LayoutTests/ChangeLog	2017-03-08 21:42:06 UTC (rev 213594)
+++ trunk/LayoutTests/ChangeLog	2017-03-08 21:56:12 UTC (rev 213595)
@@ -1,3 +1,15 @@
+2017-03-08  Antoine Quint  <[email protected]>
+
+        [mac-wk1] LayoutTest media/modern-media-controls/airplay-button/airplay-button.html is a flaky timeout
+        https://bugs.webkit.org/show_bug.cgi?id=168409
+
+        Reviewed by Dean Jackson.
+
+        Adding more detailed assertions to try to understand where the timeouts might be coming from.
+
+        * media/modern-media-controls/airplay-button/airplay-button-expected.txt:
+        * media/modern-media-controls/airplay-button/airplay-button.html:
+
 2017-03-08  Dave Hyatt  <[email protected]>
 
         CSS Multicolumn should not clip columns horizontally

Modified: trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-expected.txt (213594 => 213595)


--- trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-expected.txt	2017-03-08 21:42:06 UTC (rev 213594)
+++ trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-expected.txt	2017-03-08 21:56:12 UTC (rev 213595)
@@ -7,6 +7,15 @@
 PASS airplayButton.element.classList.contains("icon") is true
 PASS airplayButton.element.classList.contains("airplay") is true
 PASS airplayButton.iconName is "airplay"
+PASS airplayButton.width is 0
+PASS airplayButton.height is 0
+PASS airplayButton._image is iconService.imageForIconNameAndLayoutTraits(Icons.Airplay, LayoutTraits.macOS)
+PASS airplayButton._image.src is not ""
+PASS airplayButton._image.complete is false
+PASS airplayButton.width is not 0
+PASS airplayButton.height is not 0
+PASS airplayButton.needsLayout is true
+PASS scheduler.hasScheduledLayoutCallbacks is true
 PASS airplayButton.element.style.webkitMaskImage.includes("macOS/airplay@") became true
 PASS macOSFullscreenAirplayButton.element.style.webkitMaskImage.includes("macOS/airplay-fullscreen@") became true
 PASS iOSAirplayButton.element.style.webkitMaskImage.includes("iOS/airplay@") became true

Modified: trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button.html (213594 => 213595)


--- trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button.html	2017-03-08 21:42:06 UTC (rev 213594)
+++ trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button.html	2017-03-08 21:56:12 UTC (rev 213595)
@@ -14,14 +14,25 @@
 shouldBeTrue('airplayButton.element.classList.contains("icon")');
 shouldBeTrue('airplayButton.element.classList.contains("airplay")');
 shouldBeEqualToString("airplayButton.iconName", `${Icons.Airplay}`);
+shouldBe("airplayButton.width", "0");
+shouldBe("airplayButton.height", "0");
+shouldBe("airplayButton._image", "iconService.imageForIconNameAndLayoutTraits(Icons.Airplay, LayoutTraits.macOS)");
+shouldNotBeEqualToString("airplayButton._image.src", "");
+shouldBeFalse("airplayButton._image.complete");
 
 const macOSFullscreenAirplayButton = new AirplayButton({ layoutTraits: LayoutTraits.macOS | LayoutTraits.Fullscreen });
 
 const iOSAirplayButton = new AirplayButton({ layoutTraits: LayoutTraits.iOS });
 
-shouldBecomeEqual('airplayButton.element.style.webkitMaskImage.includes("macOS/airplay@")', "true", () => {
-    shouldBecomeEqual('macOSFullscreenAirplayButton.element.style.webkitMaskImage.includes("macOS/airplay-fullscreen@")', "true", () => {
-        shouldBecomeEqual('iOSAirplayButton.element.style.webkitMaskImage.includes("iOS/airplay@")', "true", finishJSTest);
+airplayButton._image.addEventListener("load", event => {
+    shouldNotBe("airplayButton.width", "0");
+    shouldNotBe("airplayButton.height", "0");
+    shouldBeTrue("airplayButton.needsLayout");
+    shouldBeTrue("scheduler.hasScheduledLayoutCallbacks");
+    shouldBecomeEqual('airplayButton.element.style.webkitMaskImage.includes("macOS/airplay@")', "true", () => {
+        shouldBecomeEqual('macOSFullscreenAirplayButton.element.style.webkitMaskImage.includes("macOS/airplay-fullscreen@")', "true", () => {
+            shouldBecomeEqual('iOSAirplayButton.element.style.webkitMaskImage.includes("iOS/airplay@")', "true", finishJSTest);
+        });
     });
 });
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to