Changeset 211136 in webkit
- Timestamp:
- Jan 24, 2017 10:30:23 PM (7 years ago)
- Location:
- trunk/LayoutTests
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r211133 r211136 1 2017-01-24 Antoine Quint <graouts@apple.com> 2 3 LayoutTest media/modern-media-controls/airplay-support/airplay-support.html is failing 4 https://bugs.webkit.org/show_bug.cgi?id=164323 5 6 Reviewed by Jon Lee. 7 8 Make media/modern-media-controls/airplay-support/airplay-support.html more robust by following 9 the same pattern used in media/airplay-target-availability.html which proved to be robust. 10 11 * media/modern-media-controls/airplay-support/airplay-support.html: 12 * platform/mac/TestExpectations: 13 1 14 2017-01-24 Joseph Pecoraro <pecoraro@apple.com> 2 15 -
trunk/LayoutTests/media/modern-media-controls/airplay-support/airplay-support.html
r208254 r211136 10 10 description("Testing the <code>AirPlaySupport</code> behavior."); 11 11 12 iconService.directoryPath = "../../../../Source/WebCore/Modules/modern-media-controls/images";13 14 12 const container = document.querySelector("div#host"); 15 13 const media = document.querySelector("video"); 16 14 const mediaController = createControls(container, media, null); 17 15 18 window.internals.setMockMediaPlaybackTargetPickerEnabled(false); 16 (function makeAirPlayAvailable() 17 { 18 debug("Making AirPlay routes available."); 19 media.addEventListener("webkitplaybacktargetavailabilitychanged", playbackTargetAvailabilityChangedOnce, true); 20 window.internals.setMockMediaPlaybackTargetPickerEnabled(true); 21 })(); 19 22 20 media.addEventListener("play", () => { 21 media.addEventListener("webkitplaybacktargetavailabilitychanged", playbackTargetAvailabilityChanged); 23 function playbackTargetAvailabilityChangedOnce(event) 24 { 25 media.removeEventListener('webkitplaybacktargetavailabilitychanged', playbackTargetAvailabilityChangedOnce, true); 26 media.addEventListener('webkitplaybacktargetavailabilitychanged', playbackTargetAvailabilityChangedAgain, true); 27 28 window.internals.setMockMediaPlaybackTargetPickerState('Sleepy TV', 'DeviceAvailable'); 29 } 30 31 function playbackTargetAvailabilityChangedAgain(event) 32 { 33 // setMockMediaPlaybackTargetPickerState happens asynchronously in WK2 and a 34 // "webkitplaybacktargetavailabilitychanged" is always sent when an event listener 35 // is added, so we may get a "not available" event first. 36 if (event.availability == 'not-available') 37 return; 38 39 media.removeEventListener('webkitplaybacktargetavailabilitychanged', playbackTargetAvailabilityChangedAgain, true); 40 41 shouldBeTrue("mediaController.controls.airplayButton.enabled"); 42 shouldBeFalse("mediaController.controls.airplayButton.on"); 43 44 window.setTimeout(enterAirPlay, 100); 45 } 46 47 function enterAirPlay() 48 { 49 debug(""); 50 debug("Entering AirPlay playback mode."); 51 22 52 media.addEventListener("webkitcurrentplaybacktargetiswirelesschanged", currentPlaybackTargetIsWirelessChanged); 23 24 debug("Making AirPlay routes available."); 25 window.internals.setMockMediaPlaybackTargetPickerEnabled(true); 26 }); 27 28 let playbackTargetBecameAvailable = false; 29 function playbackTargetAvailabilityChanged(event) 30 { 31 if (event.availability == "available" && !playbackTargetBecameAvailable) { 32 playbackTargetBecameAvailable = true; 33 shouldBeTrue("mediaController.controls.airplayButton.enabled"); 34 shouldBeFalse("mediaController.controls.airplayButton.on"); 35 36 debug(""); 37 debug("Entering AirPlay playback mode."); 38 window.internals.setMockMediaPlaybackTargetPickerState("Sleepy TV", "DeviceAvailable"); 39 media.webkitShowPlaybackTargetPicker(); 40 } 53 media.webkitShowPlaybackTargetPicker(); 41 54 } 42 55 … … 55 68 } 56 69 57 setTimeout(finishJSTest, 3000);58 59 70 </script> 60 71 <script src="../../../resources/js-test-post.js"></script> -
trunk/LayoutTests/platform/mac/TestExpectations
r211132 r211136 1479 1479 media/modern-media-controls/scrubber-support/ipad/scrubber-support-drag.html [ Skip ] 1480 1480 1481 # These sometimes work but more often than not don't1482 webkit.org/b/164323 media/modern-media-controls/airplay-support/airplay-support.html [ Pass Failure ]1483 1484 1481 # This one always times out on the bots, cannot reproduce locally. 1485 1482 webkit.org/b/165234 media/modern-media-controls/audio/audio-controls-buttons.html [ Pass Timeout ]
Note: See TracChangeset
for help on using the changeset viewer.