71 lines
2 KiB
HTML
71 lines
2 KiB
HTML
<!doctype html>
|
|
<!-- Any copyright is dedicated to the Public Domain.
|
|
- https://creativecommons.org/publicdomain/zero/1.0/ -->
|
|
<html>
|
|
<head>
|
|
<title>Video controls test</title>
|
|
<script src="/tests/SimpleTest/SimpleTest.js"></script>
|
|
<script src="/tests/SimpleTest/EventUtils.js"></script>
|
|
<script type="text/javascript" src="head.js"></script>
|
|
<link rel="stylesheet" href="/tests/SimpleTest/test.css" />
|
|
</head>
|
|
|
|
<body>
|
|
<p id="display"></p>
|
|
|
|
<div id="content">
|
|
<video width="320" height="240" id="video" controls></video>
|
|
</div>
|
|
|
|
<div id="host"></div>
|
|
|
|
<script class="testbody">
|
|
add_task(async function test_src_change() {
|
|
const video = document.getElementById("video");
|
|
|
|
function changeMediaSource(src) {
|
|
let loaded = new Promise(resolve =>
|
|
video.addEventListener("loadeddata", resolve, { once: true })
|
|
);
|
|
video.src = src;
|
|
return loaded;
|
|
}
|
|
|
|
const muteButton = getElementWithinVideo(video, "muteButton");
|
|
|
|
await changeMediaSource("video.webm");
|
|
|
|
ok(
|
|
muteButton.hasAttribute("noAudio"),
|
|
"noAudio attribute is present when the video has no audio track"
|
|
);
|
|
ok(
|
|
muteButton.disabled,
|
|
"Mute button is disabled when the video has no audio track"
|
|
);
|
|
|
|
await changeMediaSource("seek_with_sound.webm");
|
|
|
|
ok(
|
|
!muteButton.hasAttribute("noAudio"),
|
|
"noAudio attribute is not present when the video has an audio track"
|
|
);
|
|
ok(
|
|
!muteButton.disabled,
|
|
"Mute button is enabled when the video has an audio track"
|
|
);
|
|
|
|
await changeMediaSource("video.webm");
|
|
|
|
ok(
|
|
muteButton.hasAttribute("noAudio"),
|
|
"noAudio attribute is present when the video has no audio track"
|
|
);
|
|
ok(
|
|
muteButton.disabled,
|
|
"Mute button is disabled when the video has no audio track"
|
|
);
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|