| |
| Test mediaUsageState. |
| |
| RUN(internals.setMediaElementRestrictions(video, "RequireUserGestureForAudioRateChange,RequireUserGestureForVideoRateChange,RequireUserGestureToControlControlsManager")) |
| EVENT(canplaythrough) |
| |
| ** Check state before playback. |
| EXPECTED (usage.mediaURL.indexOf('content/test.mp4') > '-1') OK |
| EXPECTED (usage.isPlaying == 'false') OK |
| EXPECTED (usage.canShowControlsManager == 'false') OK |
| EXPECTED (usage.canShowNowPlayingControls == 'false') OK |
| EXPECTED (usage.isSuspended == 'false') OK |
| EXPECTED (usage.isInActiveDocument == 'true') OK |
| EXPECTED (usage.isFullscreen == 'false') OK |
| EXPECTED (usage.isMuted == 'false') OK |
| EXPECTED (usage.isMediaDocumentInMainFrame == 'false') OK |
| EXPECTED (usage.isVideo == 'true') OK |
| EXPECTED (usage.isAudio == 'false') OK |
| EXPECTED (usage.hasVideo == 'true') OK |
| EXPECTED (usage.hasAudio == 'true') OK |
| EXPECTED (usage.hasRenderer == 'true') OK |
| EXPECTED (usage.audioElementWithUserGesture == 'false') OK |
| EXPECTED (usage.userHasPlayedAudioBefore == 'false') OK |
| EXPECTED (usage.isElementRectMostlyInMainFrame == 'true') OK |
| EXPECTED (usage.playbackPermitted == 'false') OK |
| EXPECTED (usage.pageMediaPlaybackSuspended == 'false') OK |
| EXPECTED (usage.isMediaDocumentAndNotOwnerElement == 'false') OK |
| EXPECTED (usage.pageExplicitlyAllowsElementToAutoplayInline == 'false') OK |
| EXPECTED (usage.requiresFullscreenForVideoPlaybackAndFullscreenNotPermitted == 'false') OK |
| EXPECTED (usage.hasHadUserInteractionAndQuirksContainsShouldAutoplayForArbitraryUserGesture == 'false') OK |
| EXPECTED (usage.isVideoAndRequiresUserGestureForVideoRateChange == 'true') OK |
| EXPECTED (usage.isAudioAndRequiresUserGestureForAudioRateChange == 'false') OK |
| EXPECTED (usage.isVideoAndRequiresUserGestureForVideoDueToLowPowerMode == 'false') OK |
| EXPECTED (usage.noUserGestureRequired == 'false') OK |
| EXPECTED (usage.requiresPlaybackAndIsNotPlaying == 'false') OK |
| EXPECTED (usage.hasEverNotifiedAboutPlaying == 'false') OK |
| EXPECTED (usage.outsideOfFullscreen == 'false') OK |
| EXPECTED (usage.isLargeEnoughForMainContent == 'false') OK |
| |
| ** Mute video. |
| RUN(video.muted = true) |
| EXPECTED (usage.isMuted == 'true') OK |
| |
| ** Unmute video. |
| RUN(video.muted = false) |
| EXPECTED (usage.isMuted == 'false') OK |
| |
| ** Try to play without user gesture, should reject and state should not change. |
| Promise rejected correctly OK |
| EXPECTED (usage.isPlaying == 'false') OK |
| EXPECTED (usage.canShowControlsManager == 'false') OK |
| EXPECTED (usage.userHasPlayedAudioBefore == 'false') OK |
| EXPECTED (usage.playbackPermitted == 'false') OK |
| EXPECTED (usage.isVideoAndRequiresUserGestureForVideoRateChange == 'true') OK |
| EXPECTED (usage.noUserGestureRequired == 'false') OK |
| |
| ** Try to play without user gesture, should succeed and state should change. |
| EVENT(playing) |
| EXPECTED (usage.isPlaying == 'true') OK |
| EXPECTED (usage.canShowControlsManager == 'true') OK |
| EXPECTED (usage.userHasPlayedAudioBefore == 'true') OK |
| EXPECTED (usage.playbackPermitted == 'true') OK |
| EXPECTED (usage.isVideoAndRequiresUserGestureForVideoRateChange == 'false') OK |
| EXPECTED (usage.noUserGestureRequired == 'true') OK |
| END OF TEST |
| |