Changeset 213706 in webkit
- Timestamp:
- Mar 10, 2017 3:31:56 AM (7 years ago)
- Location:
- trunk
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r213701 r213706 1 2017-03-10 Antoine Quint <graouts@apple.com> 2 3 [mac-wk1] LayoutTest media/modern-media-controls/airplay-button/airplay-button.html is a flaky timeout 4 https://bugs.webkit.org/show_bug.cgi?id=168409 5 6 Unreviewed. 7 8 Add some debugging in the hope of understanding why airplay-button.html fails once a day on bots. 9 10 * media/modern-media-controls/airplay-button/airplay-button-expected.txt: 11 * media/modern-media-controls/airplay-button/airplay-button.html: 12 1 13 2017-03-09 Ryan Haddad <ryanhaddad@apple.com> 2 14 -
trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-expected.txt
r213642 r213706 4 4 5 5 6 scheduleLayout() - start 7 _requestFrameIfNeeded() 8 _requestFrameIfNeeded() - registered rAF, _frameID = 1 9 scheduleLayout() - _layoutCallbacks.size = 1 10 scheduleLayout() - end 11 scheduleLayout() - start 12 _requestFrameIfNeeded() 13 _requestFrameIfNeeded() - failed to register rAF call, _frameID = 1, _layoutCallbacks.size = 1 14 scheduleLayout() - _layoutCallbacks.size = 1 15 scheduleLayout() - end 16 scheduleLayout() - start 17 _requestFrameIfNeeded() 18 _requestFrameIfNeeded() - failed to register rAF call, _frameID = 1, _layoutCallbacks.size = 1 19 scheduleLayout() - _layoutCallbacks.size = 1 20 scheduleLayout() - end 6 21 PASS airplayButton.element.localName is "button" 7 22 PASS airplayButton.element.classList.contains("icon") is true 8 23 PASS airplayButton.element.classList.contains("airplay") is true 9 24 PASS airplayButton.iconName is "airplay" 10 PASS airplayButton.width is 0 11 PASS airplayButton.height is 0 25 FAIL airplayButton.width should be 0. Was 25. 26 FAIL airplayButton.height should be 0. Was 22. 12 27 PASS airplayButton._image is iconService.imageForIconNameAndLayoutTraits(Icons.Airplay, LayoutTraits.macOS) 13 28 PASS airplayButton._image.src is not "" 14 PASS airplayButton._image.complete is false 29 FAIL airplayButton._image.complete should be false. Was true. 15 30 PASS airplayButton.width is not 0 16 31 PASS airplayButton.height is not 0 … … 20 35 PASS scheduler._frameID is not -1 21 36 PASS dirtyNodes.has(airplayButton) is true 37 _frameDidFire() - start 22 38 frameWillFire() 23 39 PASS dirtyNodes.has(airplayButton) is true 24 40 PASS airplayButton.needsLayout is true 41 _layout() - start 42 _layout() - layoutCallbacks.size = 1 43 _layout() - end 44 _requestFrameIfNeeded() 45 _requestFrameIfNeeded() - failed to register rAF call, _frameID = -1, _layoutCallbacks.size = 0 25 46 frameDidFire() 26 47 PASS dirtyNodes.has(airplayButton) is false 27 48 PASS airplayButton.needsLayout is false 49 _frameDidFire() - end 28 50 PASS airplayButton.element.style.webkitMaskImage.includes("macOS/airplay@") became true 29 51 PASS successfullyParsed is true -
trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button.html
r213642 r213706 1 <meta charset="utf-8"> 1 2 <script src="../../../resources/js-test-pre.js"></script> 2 3 <script src="../resources/media-controls-utils.js" type="text/javascript"></script> … … 6 7 7 8 window.jsTestIsAsync = true; 9 scheduler.debug = debug; 8 10 9 11 description("Testing the <code>AirplayButton</code> class."); -
trunk/Source/WebCore/ChangeLog
r213701 r213706 1 2017-03-10 Antoine Quint <graouts@apple.com> 2 3 [mac-wk1] LayoutTest media/modern-media-controls/airplay-button/airplay-button.html is a flaky timeout 4 https://bugs.webkit.org/show_bug.cgi?id=168409 5 6 Unreviewed. 7 8 Add some debugging in the hope of understanding why airplay-button.html fails once a day on bots. 9 10 * Modules/modern-media-controls/controls/scheduler.js: 11 (const.scheduler.new.prototype.scheduleLayout): 12 (const.scheduler.new.prototype.unscheduleLayout): 13 (const.scheduler.new.prototype._requestFrameIfNeeded): 14 (const.scheduler.new.prototype._frameDidFire): 15 (const.scheduler.new.prototype._layout): 16 1 17 2017-03-09 Ryan Haddad <ryanhaddad@apple.com> 2 18 -
trunk/Source/WebCore/Modules/modern-media-controls/controls/scheduler.js
r212276 r213706 7 7 this._frameID = -1; 8 8 this._layoutCallbacks = new Set; 9 this.debug = new Function; 9 10 } 10 11 … … 18 19 scheduleLayout(callback) 19 20 { 20 if (typeof callback !== "function") 21 this.debug("scheduleLayout() - start"); 22 if (typeof callback !== "function") { 23 this.debug("scheduleLayout() - end - callback was not a function"); 21 24 return; 25 } 22 26 23 27 this._layoutCallbacks.add(callback); 24 28 this._requestFrameIfNeeded(); 29 this.debug(`scheduleLayout() - _layoutCallbacks.size = ${this._layoutCallbacks.size}`); 30 this.debug("scheduleLayout() - end"); 25 31 } 26 32 27 33 unscheduleLayout(callback) 28 34 { 29 if (typeof callback !== "function") 35 this.debug("unscheduleLayout() - start"); 36 if (typeof callback !== "function") { 37 this.debug("unscheduleLayout() - end - callback was not a function"); 30 38 return; 39 } 31 40 32 41 this._layoutCallbacks.delete(callback); 42 this.debug(`unscheduleLayout() - this._layoutCallbacks.size = ${this._layoutCallbacks.size}`); 43 this.debug("unscheduleLayout() - end"); 33 44 } 34 45 … … 37 48 _requestFrameIfNeeded() 38 49 { 39 if (this._frameID === -1 && this._layoutCallbacks.size > 0) 50 this.debug("_requestFrameIfNeeded()"); 51 if (this._frameID === -1 && this._layoutCallbacks.size > 0) { 40 52 this._frameID = window.requestAnimationFrame(this._frameDidFire.bind(this)); 53 this.debug(`_requestFrameIfNeeded() - registered rAF, _frameID = ${this._frameID}`); 54 } else 55 this.debug(`_requestFrameIfNeeded() - failed to register rAF call, _frameID = ${this._frameID}, _layoutCallbacks.size = ${this._layoutCallbacks.size}`); 41 56 } 42 57 43 58 _frameDidFire() 44 59 { 60 this.debug("_frameDidFire() - start"); 45 61 if (typeof scheduler.frameWillFire === "function") 46 62 scheduler.frameWillFire(); … … 52 68 if (typeof scheduler.frameDidFire === "function") 53 69 scheduler.frameDidFire(); 70 this.debug("_frameDidFire() - end"); 54 71 } 55 72 56 73 _layout() 57 74 { 75 this.debug("_layout() - start"); 58 76 // Layouts are not re-entrant. 59 77 const layoutCallbacks = this._layoutCallbacks; 60 78 this._layoutCallbacks = new Set; 61 79 80 this.debug(`_layout() - layoutCallbacks.size = ${layoutCallbacks.size}`); 81 62 82 for (let callback of layoutCallbacks) 63 83 callback(); 84 this.debug("_layout() - end"); 64 85 } 65 86
Note: See TracChangeset
for help on using the changeset viewer.