summaryrefslogtreecommitdiffstats
path: root/toolkit/content/tests/widgets/test_videocontrols_src_change.html
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/content/tests/widgets/test_videocontrols_src_change.html')
-rw-r--r--toolkit/content/tests/widgets/test_videocontrols_src_change.html56
1 files changed, 56 insertions, 0 deletions
diff --git a/toolkit/content/tests/widgets/test_videocontrols_src_change.html b/toolkit/content/tests/widgets/test_videocontrols_src_change.html
new file mode 100644
index 0000000000..535b9483cd
--- /dev/null
+++ b/toolkit/content/tests/widgets/test_videocontrols_src_change.html
@@ -0,0 +1,56 @@
+<!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>
+
+ <pre id="test">
+<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>
+</pre>
+</body>
+
+</html>