summaryrefslogtreecommitdiffstats
path: root/dom/media/webrtc/tests/mochitests/test_getUserMedia_cubebDisabledFakeStreams.html
diff options
context:
space:
mode:
Diffstat (limited to 'dom/media/webrtc/tests/mochitests/test_getUserMedia_cubebDisabledFakeStreams.html')
-rw-r--r--dom/media/webrtc/tests/mochitests/test_getUserMedia_cubebDisabledFakeStreams.html43
1 files changed, 43 insertions, 0 deletions
diff --git a/dom/media/webrtc/tests/mochitests/test_getUserMedia_cubebDisabledFakeStreams.html b/dom/media/webrtc/tests/mochitests/test_getUserMedia_cubebDisabledFakeStreams.html
new file mode 100644
index 0000000000..f8150cc4c1
--- /dev/null
+++ b/dom/media/webrtc/tests/mochitests/test_getUserMedia_cubebDisabledFakeStreams.html
@@ -0,0 +1,43 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+ <script type="application/javascript" src="mediaStreamPlayback.js"></script>
+</head>
+<body>
+<pre id="test">
+<script type="application/javascript">
+ createHTML({
+ title: "getUserMedia fake stream with Cubeb Disabled Test",
+ bug: "1443525"
+ });
+ /**
+ * Run a test to verify we can still return a fake stream even if we cannot
+ * get a cubeb context. See also Bug 1434477
+ */
+ runTest(async function () {
+ info("Get user media with cubeb disabled and fake tracks starting");
+ // Push prefs to ensure no cubeb context and fake streams
+ await pushPrefs(["media.cubeb.force_null_context", true],
+ ["media.navigator.streams.fake", true],
+ ['media.audio_loopback_dev', '']);
+ let testAudio = createMediaElement('audio', 'testAudio');
+ // Request audio only, to avoid cams
+ let constraints = {audio: true, video: false};
+ let stream;
+ try {
+ stream = await getUserMedia(constraints);
+ } catch (e) {
+ // We've got no audio backend, so we expect gUM to fail
+ ok(false, `Did not expect to fail, but got ${e}`);
+ return;
+ }
+ ok(stream, "getUserMedia should get a stream!");
+ let playback = new MediaStreamPlayback(testAudio, stream);
+ return playback.playMedia(false);
+ });
+
+
+</script>
+</pre>
+</body>
+</html>