54 lines
1.7 KiB
HTML
54 lines
1.7 KiB
HTML
<!-- webkit-test-runner [ useEphemeralSession=true ] -->
|
|
<html>
|
|
<head>
|
|
<script src='media-file.js'></script>
|
|
<script src='video-test.js'></script>
|
|
<script>
|
|
|
|
let usage;
|
|
let videoURL;
|
|
|
|
window.addEventListener('load', async event => {
|
|
|
|
if (!window.internals) {
|
|
failTest(`<br>This test requires internals!`);
|
|
return;
|
|
}
|
|
|
|
findMediaElement();
|
|
|
|
videoURL = findMediaFile("video", "content/test");
|
|
video.src = videoURL;
|
|
|
|
await waitFor(video, 'canplaythrough');
|
|
|
|
consoleWrite("<br>** Check state before playback, there should be no usage state.");
|
|
testExpected('internals.mediaUsageState(video)', "NotSupportedError");
|
|
|
|
consoleWrite("<br>** Mute video, there should still be no usage state.");
|
|
run('video.muted = true');
|
|
testExpected('internals.mediaUsageState(video)', "NotSupportedError");
|
|
|
|
consoleWrite("<br>** Unmute video, there should still be no usage state.");
|
|
run('video.muted = false');
|
|
testExpected('internals.mediaUsageState(video)', "NotSupportedError");
|
|
|
|
consoleWrite("<br>** Try to play without user gesture, there should still be no usage state.")
|
|
runWithKeyDown(() => {
|
|
video.play();
|
|
});
|
|
await waitFor(video, 'playing');
|
|
|
|
testExpected('internals.mediaUsageState(video)', "NotSupportedError");
|
|
|
|
endTest();
|
|
});
|
|
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<video controls></video>
|
|
<p>Test mediaUsageState.</p>
|
|
</body>
|
|
</html>
|