summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/mediacapture-streams
diff options
context:
space:
mode:
authorMoonchild <moonchild@palemoon.org>2021-02-25 01:03:57 +0000
committerMoonchild <moonchild@palemoon.org>2021-02-25 01:03:57 +0000
commitceadffab6b357723981a429e11222daf6cd6dcfb (patch)
tree5603053048d6a460f79b22bdf165fb74d32d39b0 /testing/web-platform/tests/mediacapture-streams
parent14fb2f966e9b54598c451e3cb35b4aa0480dafed (diff)
parentad5a13bd501e379517da1a944c104a11d951a3f5 (diff)
downloadUXP-RC_20210225.tar
UXP-RC_20210225.tar.gz
UXP-RC_20210225.tar.lz
UXP-RC_20210225.tar.xz
UXP-RC_20210225.zip
Merge branch 'master' into releaseRC_20210225
Diffstat (limited to 'testing/web-platform/tests/mediacapture-streams')
-rw-r--r--testing/web-platform/tests/mediacapture-streams/GUM-api.https.html23
-rw-r--r--testing/web-platform/tests/mediacapture-streams/GUM-deny.https.html38
-rw-r--r--testing/web-platform/tests/mediacapture-streams/GUM-empty-option-param.https.html35
-rw-r--r--testing/web-platform/tests/mediacapture-streams/GUM-impossible-constraint.https.html35
-rw-r--r--testing/web-platform/tests/mediacapture-streams/GUM-optional-constraint.https.html32
-rw-r--r--testing/web-platform/tests/mediacapture-streams/GUM-trivial-constraint.https.html31
-rw-r--r--testing/web-platform/tests/mediacapture-streams/GUM-unknownkey-option-param.https.html37
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaDevices-enumerateDevices.https.html47
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaDevices-getUserMedia.https.html41
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStream-MediaElement-preload-none.https.html58
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStream-MediaElement-srcObject.https.html55
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStream-add-audio-track.https.html54
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStream-audio-only.https.html35
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStream-finished-add.https.html45
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStream-gettrackid.https.html35
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStream-id-manual.https.html32
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStream-idl.https.html52
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStream-removetrack.https.html46
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStream-video-only.https.html32
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-MediaElement-disabled-audio-is-silence.https.html55
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-MediaElement-disabled-video-is-black.https.html56
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-end.https.html39
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-id.https.html28
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-init.https.html73
-rw-r--r--testing/web-platform/tests/mediacapture-streams/MediaStreamTrackEvent-constructor.https.html42
-rw-r--r--testing/web-platform/tests/mediacapture-streams/OWNERS3
26 files changed, 0 insertions, 1059 deletions
diff --git a/testing/web-platform/tests/mediacapture-streams/GUM-api.https.html b/testing/web-platform/tests/mediacapture-streams/GUM-api.https.html
deleted file mode 100644
index 6e662dded..000000000
--- a/testing/web-platform/tests/mediacapture-streams/GUM-api.https.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>getUserMedia: test that getUserMedia is present (with or without vendor prefix)</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#navigatorusermedia">
-<meta name='assert' content='Check that the getUserMedia() method is present.'/>
-</head>
-<body>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks for the presence of the
-<code>navigator.getUserMedia</code> method, taking vendor prefixes into account.</p>
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script>
-<script>
-test(function () {
- assert_true(undefined !== navigator.getUserMedia, "navigator.getUserMedia exists");
- }, "getUserMedia() is present on navigator");
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/GUM-deny.https.html b/testing/web-platform/tests/mediacapture-streams/GUM-deny.https.html
deleted file mode 100644
index cce0e1c18..000000000
--- a/testing/web-platform/tests/mediacapture-streams/GUM-deny.https.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!doctype html>
-<html>
-<head>
- <title>getUserMedia() triggers error callback when auth is denied</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#error-names">
-<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#idl-def-MediaStreamError">
-</head>
-<body>
-<p class="instructions">When prompted, <strong>please deny</strong> access to
-the video stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that the error callback is triggered
-when user denies access to the video stream.</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script>
-<script>
-var t = async_test("Tests that the error callback is triggered when permission is denied", {timeout:10000});
-t.step(function() {
- navigator.getUserMedia(
- {video: true},
- t.step_func(function (stream) {
- assert_unreached("The success callback should not be triggered since access is to be denied");
- t.done();
- }),
- t.step_func(function (error) {
- assert_equals(error.name, "securityError", "securityError returned");
- assert_equals(error.constraintName, undefined, "constraintName attribute not set for permission denied");
- t.done();
- })
- );
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/GUM-empty-option-param.https.html b/testing/web-platform/tests/mediacapture-streams/GUM-empty-option-param.https.html
deleted file mode 100644
index a543129bb..000000000
--- a/testing/web-platform/tests/mediacapture-streams/GUM-empty-option-param.https.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>getUserMedia({}) aborts with NOT_SUPPORTED_ERR</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-NavigatorUserMedia-getUserMedia-void-MediaStreamConstraints-constraints-NavigatorUserMediaSuccessCallback-successCallback-NavigatorUserMediaErrorCallback-errorCallback">
-</head>
-<body>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that getUserMedia with no value in the
-options parameter raises a NOT_SUPPORTED_ERR exception.</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script>
-<script>
-var t = async_test("Tests that getUserMedia raises a NOT_SUPPORTED_ERR exception when used with an empty options parameter");
-t.step( function () {
- // TODO This is no longer what's in the spec, see https://www.w3.org/Bugs/Public/show_bug.cgi?id=22211
- assert_throws("NOT_SUPPORTED_ERR",
- function () {
- navigator.getUserMedia({}, t.step_func(function (stream) {
- assert_unreached("This should never be triggered since the constraints parameter is empty");
- t.done();
- }), t.step_func(function (error) {
- assert_unreached("This should never be triggered since the constraints parameter is empty");
- }));
- });
- t.done();
-});
-
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/GUM-impossible-constraint.https.html b/testing/web-platform/tests/mediacapture-streams/GUM-impossible-constraint.https.html
deleted file mode 100644
index b63856275..000000000
--- a/testing/web-platform/tests/mediacapture-streams/GUM-impossible-constraint.https.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>Trivial mandatory constraint in getUserMedia</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-NavigatorUserMedia-getUserMedia-void-MediaStreamConstraints-constraints-NavigatorUserMediaSuccessCallback-successCallback-NavigatorUserMediaErrorCallback-errorCallback">
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#idl-def-NavigatorUserMediaError">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your video stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that setting an impossible mandatory
-constraint (width &gt;=1G) in getUserMedia works</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script>
-<script>
-var t = async_test("Tests that setting an impossible constraint in getUserMedia fails", {timeout:10000});
-t.step(function() {
- // Note - integer conversion is weird for +inf and numbers > 2^32, so we
- // use a number less than 2^32 for testing.
- navigator.getUserMedia({video: {width: {min:100000000}}}, t.step_func(function (stream) {
- assert_unreached("a Video stream of width 100M cannot be created");
- t.done();
- }), t.step_func(function(error) {
- assert_equals(error.name, "ConstraintNotSatisfiedError", "An impossible constraint triggers a ConstraintNotSatisfiedError");
- assert_equals(error.constraintName, "width", "The name of the not satisfied error is given in error.constraintName");
- t.done();
- }));
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/GUM-optional-constraint.https.html b/testing/web-platform/tests/mediacapture-streams/GUM-optional-constraint.https.html
deleted file mode 100644
index 7e69ca03f..000000000
--- a/testing/web-platform/tests/mediacapture-streams/GUM-optional-constraint.https.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>Optional constraint recognized as optional in getUserMedia</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-NavigatorUserMedia-getUserMedia-void-MediaStreamConstraints-constraints-NavigatorUserMediaSuccessCallback-successCallback-NavigatorUserMediaErrorCallback-errorCallback">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your video stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that setting an optional constraint in
-getUserMedia is handled as optional</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script>
-<script>
-var t = async_test("Tests that setting an optional constraint in getUserMedia is handled as optional", {timeout:10000});
-t.step(function() {
- navigator.getUserMedia({video: {advanced: [{width: {min:1024, max: 800}}]}},
- t.step_func(function (stream) {
- assert_equals(stream.getVideoTracks().length, 1, "the media stream has exactly one video track");
- t.done();
- }),
- t.step_func(function(error) {
- assert_unreached("an optional constraint can't stop us from obtaining a video stream");
- }));
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/GUM-trivial-constraint.https.html b/testing/web-platform/tests/mediacapture-streams/GUM-trivial-constraint.https.html
deleted file mode 100644
index c24d02b84..000000000
--- a/testing/web-platform/tests/mediacapture-streams/GUM-trivial-constraint.https.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>Trivial mandatory constraint in getUserMedia</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-NavigatorUserMedia-getUserMedia-void-MediaStreamConstraints-constraints-NavigatorUserMediaSuccessCallback-successCallback-NavigatorUserMediaErrorCallback-errorCallback">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your video stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that setting a trivial mandatory
-constraint (width &gt;=0) in getUserMedia works</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script>
-<script>
-var t = async_test("Tests that setting a trivial mandatory constraint in getUserMedia works", {timeout:10000});
-t.step(function() {
- navigator.getUserMedia({video: {width: {min:0}}}, t.step_func(function (stream) {
- assert_equals(stream.getVideoTracks().length, 1, "the media stream has exactly one video track");
- t.done();
- }), t.step_func(function(error) {
- assert_unreached("a Video stream of minimally zero width can always be created");
- t.done();
- }));
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/GUM-unknownkey-option-param.https.html b/testing/web-platform/tests/mediacapture-streams/GUM-unknownkey-option-param.https.html
deleted file mode 100644
index c288c7439..000000000
--- a/testing/web-platform/tests/mediacapture-streams/GUM-unknownkey-option-param.https.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>getUserMedia({doesnotexist:true}) aborts with NOT_SUPPORTED_ERR</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-NavigatorUserMedia-getUserMedia-void-MediaStreamConstraints-constraints-NavigatorUserMediaSuccessCallback-successCallback-NavigatorUserMediaErrorCallback-errorCallback">
-</head>
-<body>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that getUserMedia with an unknown value
-in the options parameter raises a NOT_SUPPORTED_ERR exception.</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script>
-<script>
-test(function () {
- // TODO This is no longer what's in the spec, see https://www.w3.org/Bugs/Public/show_bug.cgi?id=22211
- assert_throws(
- "NOT_SUPPORTED_ERR",
- function () {
- navigator.getUserMedia(
- {doesnotexist:true},
- t.step_func(function (stream) {
- assert_unreached("This should never be triggered since the constraints parameter is unrecognized");
- }), t.step_func(function (error) {
- assert_unreached("This should never be triggered since the constraints parameter is unrecognized");
- }));
- }
- )
- }
-);
-
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaDevices-enumerateDevices.https.html b/testing/web-platform/tests/mediacapture-streams/MediaDevices-enumerateDevices.https.html
deleted file mode 100644
index 806416e2c..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaDevices-enumerateDevices.https.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>enumerateDevices: test that enumerateDevices is present</title>
-<link rel="author" title="Dr Alex Gouaillard" href="mailto:agouaillard@gmail.com"/>
-<link rel="help" href="https://w3c.github.io/mediacapture-main/#enumerating-devices">
-<meta name='assert' content='Check that the enumerateDevices() method is present.'/>
-</head>
-<body>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks for the presence of the
-<code>navigator.mediaDevices.enumerateDevices()</code> method.</p>
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script>
-"use strict";
-//NOTE ALEX: for completion, a test for ondevicechange event is missing.
-test(function () {
- assert_true(undefined !== navigator.mediaDevices.enumerateDevices, "navigator.mediaDevices.enumerateDevices exists");
- var p = navigator.mediaDevices.enumerateDevices()
- p.then(function(list){
- for(let mediainfo of list){
- // TODO check the type of mediainfo
- assert_true(undefined !== mediainfo.deviceId, "mediaInfo's deviceId should exist.");
- assert_true(undefined !== mediainfo.kind, "mediaInfo's kind should exist.");
- assert_true(undefined !== mediainfo.label, "mediaInfo's label should exist.");
- assert_true(undefined !== mediainfo.groupId, "mediaInfo's groupId should exist.");
- // TODO the values of some of those fields should be empty string by default if no permission has been requested.
- if( mediainfo.kind == "audioinput" ||
- mediainfo.kind == "videoinput") {
- // NOTE ALEX: looks like nobody has implemented that. How can I make it a separate test,
- // ... to have better granularity?
- // assert_true(undefined !== mediainfo.getCapabilities(), "MediaDeviceInfo.getCapabilities() exists.");
- // var cap = mediainfo.getcapabilities();
- } else if ( mediainfo.kind !== "audiooutput" ) {
- assert_unreached("mediainfo.kind should be one of 'audioinput', 'videoinput', or 'audiooutput'.")
- }
- }
- })
- p.catch(function(err){
- assert_unreached("A call to enumerateDevices() should never fail.");
- });
-}, "mediaDevices.enumerateDevices() is present and working on navigator");
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaDevices-getUserMedia.https.html b/testing/web-platform/tests/mediacapture-streams/MediaDevices-getUserMedia.https.html
deleted file mode 100644
index 0573ab0a5..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaDevices-getUserMedia.https.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>getUserMedia: test that mediaDevices.getUserMedia is present</title>
-<link rel="author" title="Dr Alex Gouaillard" href="mailto:agouaillard@gmail.com"/>
-<link rel="help" href="https://w3c.github.io/mediacapture-main/#mediadevices-interface-extensions">
-<meta name='assert' content='Check that the mediaDevices.getUserMedia() method is present.'/>
-</head>
-<body>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks for the presence of the
-<code>navigator.mediaDevices.getUserMedia</code> method.</p>
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script>
-test(function () {
- assert_true(undefined !== navigator.mediaDevices.getUserMedia, "navigator.mediaDevices.getUserMedia exists.");
- // TODO: do some stuff with it
- assert_true(undefined !== navigator.mediaDevices.getSupportedConstraints, "navigator.mediaDevices.getSupportedConstraints exists.");
- var list = navigator.mediaDevices.getSupportedConstraints();
- // TODO: we are supposed to check that all values returned can be used in a constraint ....
- // NOTE: the current list of attributes that may or may not be here
- // ... FF for example has many no tin that list, should we fail if an attribute is present but not listed in the specs?
- // list.width
- // list.height
- // list.aspectRatio
- // list.frameRate
- // list.facingMode
- // list.volume
- // list.sampleRate
- // list.sampleSize
- // list.echoCancellation
- // list.latency
- // list.channelCount
- // list.deviceId
- // list.groupId
- }, "mediaDevices.getUserMedia() is present on navigator");
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStream-MediaElement-preload-none.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStream-MediaElement-preload-none.https.html
deleted file mode 100644
index ce97806a8..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStream-MediaElement-preload-none.https.html
+++ /dev/null
@@ -1,58 +0,0 @@
-<!DOCTYPE html>
-<!-- Copyright © 2016 Chromium authors and World Wide Web Consortium, (Massachusetts Institute of Technology, ERCIM, Keio University, Beihang). -->
-<html>
- <head>
- <title>Test that the HTMLMediaElement preload 'none' attribute value is ignored for MediaStream used as srcObject and MediaStream object URLs used as src.</title>>
- <link rel="author" title="Matthew Wolenetz" href="mailto:wolenetz@chromium.org"/>
- <script src="/resources/testharness.js"></script>
- <script src="/resources/testharnessreport.js"></script>
- <script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}, {"ancestors":["window"], "name":"MediaStream"}]'></script>
- </head>
- <body>
- <p class="instructions">When prompted, accept to share your audio and video streams.</p>
- <h1 class="instructions">Description</h1>
- <p class="instructions">This test checks that the HTMLMediaElement preload 'none' attribute value is ignored for MediaStream used as srcObject and MediaStream object URLs used as src.</p>
-
- <audio preload="none"></audio>
- <video preload="none"></video>
-
- <script>
- function testPreloadNone(t, mediaElement, setSourceStreamFunc)
- {
- // The optional deferred load steps (for preload none) for MediaStream resources should be skipped.
- mediaElement.addEventListener("suspend", t.unreached_func("'suspend' should not be fired."));
-
- mediaElement.addEventListener("loadeddata", t.step_func(function()
- {
- assert_equals(mediaElement.networkState, mediaElement.NETWORK_LOADING);
- t.done();
- }));
-
- setSourceStreamFunc();
- assert_equals(mediaElement.networkState, mediaElement.NETWORK_NO_SOURCE); // Resource selection is active.
- }
-
- async_test(function(t)
- {
- var aud = document.querySelector("audio");
- navigator.getUserMedia({audio:true}, t.step_func(function(stream)
- {
- testPreloadNone(t, aud, t.step_func(function()
- {
- aud.src = URL.createObjectURL(stream);
- t.add_cleanup(function() { URL.revokeObjectURL(aud.src); });
- }));
- }), t.unreached_func("getUserMedia error callback was invoked."));
- }, "Test that preload 'none' is ignored for MediaStream object URL used as src");
-
- async_test(function(t)
- {
- var vid = document.querySelector("video");
- navigator.getUserMedia({video:true}, t.step_func(function(stream)
- {
- testPreloadNone(t, vid, t.step_func(function() { vid.srcObject = stream; }));
- }), t.unreached_func("getUserMedia error callback was invoked."));
- }, "Test that preload 'none' is ignored for MediaStream used as srcObject");
- </script>
- </body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStream-MediaElement-srcObject.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStream-MediaElement-srcObject.https.html
deleted file mode 100644
index 1bdbe3eee..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStream-MediaElement-srcObject.https.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>Assigning mediastream to a video element</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#navigatorusermedia">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your video stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that the MediaStream object returned by
-the success callback in getUserMedia can be properly assigned to a video element
-via the <code>srcObject</code> attribute.</p>
-
-<video id="vid"></video>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]' data-prefixed-prototypes='[{"ancestors":["HTMLMediaElement"],"name":"srcObject"}]'></script>
-<script>
-var vid = document.getElementById("vid");
-var t = async_test("Tests that a MediaStream can be assigned to a video element with srcObject", {timeout: 10000});
-t.step(function() {
- navigator.getUserMedia({video: true}, t.step_func(function (stream) {
- var testOncePlaying = function() {
- assert_equals(vid.played.length, 1, "A MediaStream's timeline always consists of a single range");
- assert_equals(vid.played.start(0), 0, "A MediaStream's timeline always consists of a single range");
- assert_equals(vid.played.end(0), vid.currentTime, "A MediaStream's timeline always consists of a single range");
- assert_equals(vid.readyState, vid.HAVE_ENOUGH_DATA, "Upon selecting a media stream, the UA sets readyState to HAVE_ENOUGH_DATA");
- var time = vid.currentTime;
- assert_throws("INVALID_STATE_ERR", function() {
- vid.currentTime = 0;
- });
- assert_equals(vid.currentTime, time, "The UA MUST ignore attempts to set the currentTime attribute");
- // TODO add test that duration must be set to currentTime
- // when mediastream is destroyed
- vid.removeEventListener("timeupdate", testOncePlaying, false);
- t.done();
- }
- vid.addEventListener("timeupdate", t.step_func(testOncePlaying), false);
- vid.srcObject = stream;
- vid.play();
- assert_true(!vid.seeking, "A MediaStream is not seekable");
- assert_equals(vid.seekable.length, 0, "A MediaStream is not seekable");
- assert_equals(vid.defaultPlaybackRate, 1, "playback rate is always 1");
- assert_equals(vid.playbackRate, 1, "playback rate is always 1");
- assert_equals(vid.buffered.length, 0, "A MediaStream cannot be preloaded. Therefore, there is no buffered timeranges");
- assert_equals(vid.duration, Infinity, " A MediaStream does not have a pre-defined duration. ");
- assert_equals(vid.startDate, NaN, " A MediaStream does not specify a timeline offset");
- }), function(error) {});
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStream-add-audio-track.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStream-add-audio-track.https.html
deleted file mode 100644
index e3650aae0..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStream-add-audio-track.https.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>Adding a track to a MediaStream</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStreamTrackList-add-void-MediaStreamTrack-track">
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#event-mediastream-addtrack">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your audio stream, then your video stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that adding a track to a MediaStream works as expected.</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script>
-<script>
-var t = async_test("Tests that adding a track to a MediaStream works as expected", {timeout: 20000}); // longer timeout since requires double user interaction
-t.step(function () {
- var audio, video;
-
- navigator.getUserMedia({audio: true}, gotAudio, function(error) {});
- function gotAudio(stream) {
- audio = stream;
- navigator.getUserMedia({video: true}, gotVideo, function(error) {});
- }
-
- function gotVideo(stream) {
- video = stream;
- t.step(function () {
- assert_equals(video.getAudioTracks().length, 0, "video mediastream starts with no audio track");
- video.addTrack(audio.getAudioTracks()[0]);
- assert_equals(video.getAudioTracks().length, 1, "video mediastream has now one audio track");
- video.addTrack(audio.getAudioTracks()[0]);
- assert_equals(video.getAudioTracks().length, 1, "video mediastream still has one audio track"); // If track is already in stream's track set, then abort these steps.
-
- });
- audio.onaddtrack = t.step_func(function () {
- assert_unreached("onaddtrack is not fired when the script directly modified the track of a mediastream");
- });
- t.step(function () {
- assert_equals(audio.getVideoTracks().length, 0, "audio mediastream starts with no video track");
- audio.addTrack(video.getVideoTracks()[0]);
- assert_equals(audio.getVideoTracks().length, 1, "audio mediastream now has one video track");
- });
- t.step(function () {
- t.done();
- });
- }
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStream-audio-only.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStream-audio-only.https.html
deleted file mode 100644
index 77d6d0c19..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStream-audio-only.https.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>getUserMedia({audio:true}) creates a stream with at least an audio track</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-NavigatorUserMedia-getUserMedia-void-MediaStreamConstraints-constraints-NavigatorUserMediaSuccessCallback-successCallback-NavigatorUserMediaErrorCallback-errorCallback">
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStreamTrack-kind">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your audio stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that the MediaStream object returned by
-the success callback in getUserMedia has exactly one audio track.</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}, {"ancestors":["window"], "name":"MediaStream"}]'></script>
-<script>
-var astream;
-var t = async_test("Tests that a MediaStream with exactly one audio track is returned", {timeout: 10000});
-t.step(function() {
- navigator.getUserMedia({audio:true}, t.step_func(function (stream) {
- astream = stream;
- assert_true(stream instanceof MediaStream, "getUserMedia success callback comes with a MediaStream object");
- assert_equals(stream.getAudioTracks().length, 1, "the media stream has exactly one audio track");
- assert_equals(stream.getAudioTracks()[0].kind, "audio", "getAudioTracks() returns a sequence of tracks whose kind is 'audio'");
- assert_equals(stream.getVideoTracks().length, 0, "the media stream has zero video track");
- t.done();
- }),
- function(error) {});
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStream-finished-add.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStream-finished-add.https.html
deleted file mode 100644
index a0c4b28b1..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStream-finished-add.https.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>Adding a track to an inactive MediaStream</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#widl-MediaStream-addTrack-void-MediaStreamTrack-track">
-<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#widl-MediaStreamTrack-stop-void">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your audio stream, then
-your video stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that adding a track to an inactive
-MediaStream is allowed.</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script>
-<script>
-var t = async_test("Tests that adding a track to an inactive MediaStream is allowed", {timeout:20000});
-t.step(function () {
- var audio, video;
-
- navigator.getUserMedia({audio:true}, gotAudio, function() {});
- function gotAudio(stream) {
- audio = stream;
- navigator.getUserMedia({video:true}, gotVideo, function() {});
- }
-
- function gotVideo(stream) {
- video = stream;
- t.step(function () {
- audio.getAudioTracks()[0].stop();
- assert_false(audio.active, "audio stream is inactive after stopping its only audio track");
- assert_true(video.active, "video stream is active");
- audio.addTrack(video.getVideoTracks()[0]);
- audio.removeTrack(audio.getAudioTracks()[0]);
- });
- t.done();
- }
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStream-gettrackid.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStream-gettrackid.https.html
deleted file mode 100644
index a7fabdaac..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStream-gettrackid.https.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>Retrieving a track from a MediaStream</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStream-getTrackById-MediaStreamTrack-DOMString-trackId">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your video stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that MediaStream.getTrackById behaves as expected</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script>
-<script>
-var t = async_test("Tests that MediaStream.getTrackById works as expected", {timeout: 10000});
-t.step(function () {
- navigator.getUserMedia(
- {video: true},
- t.step_func(gotVideo),
- t.step_func(function (error) {
- assert_unreached('Unexpected getUserMedia error: ' + error);
- }));
- function gotVideo(stream) {
- var track = stream.getVideoTracks()[0];
- assert_equals(track, stream.getTrackById(track.id), "getTrackById returns track of given id");
- assert_equals(stream.getTrackById(track.id + "foo"), null, "getTrackById of inexistant id returns null");
- t.done();
- }
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStream-id-manual.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStream-id-manual.https.html
deleted file mode 100644
index 88f095458..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStream-id-manual.https.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>getUserMedia() creates a stream with a proper id</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStream-id">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your video stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that the MediaStream object returned by
-the success callback in getUserMedia has a correct id.</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script>
-<script>
-var t = async_test("Tests that a MediaStream with a correct id is returned");
-var allowedCharacters = /^[\u0021\u0023-\u0027\u002A-\u002B\u002D-\u002E\u0030-\u0039\u0041-\u005A\u005E-\u007E]*$/;
-if (window.navigator.getUserMedia) {
- navigator.getUserMedia({video:true}, function (stream) {
- t.step(function () {
- assert_true(stream.id.length === 36, "the media stream id has 36 characters");
- assert_regexp_match(stream.id, allowedCharacters, "the media stream id uses the set of allowed characters");
- });
- t.done();
-}, function(error) {});
-}
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStream-idl.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStream-idl.https.html
deleted file mode 100644
index 81cce51c1..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStream-idl.https.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>MediaStream constructor algorithm</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#idl-def-MediaStream">
-<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#widl-MediaStream-id">
-<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#mediastream">
-<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#event-mediastreamtrack-ended">
-<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#widl-MediaStreamTrack-stop-void">
-<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#widl-MediaStreamTrack-clone-MediaStreamTrack">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your video and audio stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that the MediaStream constructor
-follows the algorithm set in the spec.</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"},{"ancestors":["window"], "name":"MediaStream"}]'></script>
-<script>
-var t = async_test("Tests that a MediaStream constructor follows the algorithm set in the spec", {timeout: 10000});
-t.step(function() {
- navigator.getUserMedia({video: true, audio:true}, t.step_func(function (stream) {
- var stream1 = new MediaStream();
- assert_not_equals(stream.id, stream1.id, "Two different MediaStreams have different ids");
- var stream2 = new MediaStream(stream);
- assert_not_equals(stream.id, stream2.id, "A MediaStream constructed from another have different ids");
- var audioTrack1 = stream.getAudioTracks()[0];
- var videoTrack = stream.getVideoTracks()[0];
- assert_equals(audioTrack1, stream2.getAudioTracks()[0], "A MediaStream constructed from another share the same audio track");
- assert_equals(videoTrack, stream2.getVideoTracks()[0], "A MediaStream constructed from another share the same video track");
- var stream4 = new MediaStream([audioTrack1]);
- assert_equals(stream4.getTrackById(audioTrack1.id), audioTrack1, "a non-ended track gets added via the MediaStream constructor");
-
- var audioTrack2 = audioTrack1.clone();
- audioTrack2.addEventListener("ended", t.step_func(function () {
- var stream3 = new MediaStream([audioTrack2, videoTrack]);
- assert_equals(stream3.getTrackById(audioTrack2.id), null, "an ended track doesn't get added via the MediaStream constructor");
- assert_equals(stream3.getTrackById(videoTrack.id), videoTrack, "a non-ended track gets added via the MediaStream constructor even if the previous track was ended");
- var stream5 = new MediaStream([audioTrack2]);
- assert_false(stream5.active, "a MediaStream created using the MediaStream() constructor whose arguments are lists of MediaStreamTrack objects that are all ended, the MediaStream object MUST be created with its active attribute set to false");
- t.done();
- }), false);
- audioTrack2.stop();
- }), function(error) {});
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStream-removetrack.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStream-removetrack.https.html
deleted file mode 100644
index 1a62bedd7..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStream-removetrack.https.html
+++ /dev/null
@@ -1,46 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>Removing a track from a MediaStream</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStreamTrackList-remove-void-MediaStreamTrack-track">
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#event-mediastream-removetrack">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your audio stream, then your video stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that removinging a track from a MediaStream works as expected.</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script>
-<script>
-var t = async_test("Tests that a removal from a MediaStream works as expected", {timeout:10000});
-t.step(function () {
- var audio;
- navigator.getUserMedia({audio:true}, gotAudio, function(error) {});
- function gotAudio(stream) {
- audio = stream;
- navigator.getUserMedia({video:true}, gotVideo, function(error) {});
- }
-
- function gotVideo(stream) {
- var video = stream;
- video.onremovetrack = function () {
- assert_unreached("onremovetrack is not triggered when removal of track is triggered by the script itself");
- };
- t.step(function () {
- assert_equals(video.getVideoTracks().length, 1, "video mediastream starts with one video track");
- video.removeTrack(video.getVideoTracks()[0]);
- assert_equals(video.getVideoTracks().length, 0, "video mediastream has no video track left");
- video.removeTrack(audio.getAudioTracks()[0]); // should not throw
- });
- t.step(function() {
- t.done();
- });
- }
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStream-video-only.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStream-video-only.https.html
deleted file mode 100644
index aaf880ff5..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStream-video-only.https.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>getUserMedia({video:true}) creates a stream with one video track</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-NavigatorUserMedia-getUserMedia-void-MediaStreamConstraints-constraints-NavigatorUserMediaSuccessCallback-successCallback-NavigatorUserMediaErrorCallback-errorCallback">
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStreamTrack-kind">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your video stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that the MediaStream object returned by
-the success callback in getUserMedia has exactly one video track and no audio.</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}, {"ancestors":["window"], "name":"MediaStream"}]'></script>
-<script>
-var t = async_test("Tests that a MediaStream with at least one video track is returned");
-t.step(function() {
- navigator.getUserMedia({video: true}, t.step_func(function (stream) {
- assert_true(stream instanceof MediaStream, "getUserMedia success callback comes with a MediaStream object");
- assert_equals(stream.getAudioTracks().length, 0, "the media stream has zero audio track");
- assert_equals(stream.getVideoTracks().length, 1, "the media stream has exactly one video track");
- assert_equals(stream.getVideoTracks()[0].kind, "video", "getAudioTracks() returns a sequence of tracks whose kind is 'video'");
- t.done();
- }), function(error) {});
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-MediaElement-disabled-audio-is-silence.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-MediaElement-disabled-audio-is-silence.https.html
deleted file mode 100644
index 189bb849e..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-MediaElement-disabled-audio-is-silence.https.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>A disabled audio track is rendered as silence</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#introduction">
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#mediastreams-as-media-elements">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your audio stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that a disabled audio track in a
-MediaStream is rendered as silence. It relies on the
-<a href="https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html">
-Web Audio API</a>.</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}, {"ancestors":["window"], "name":"AudioContext"}]'></script>
-<script>
-var t = async_test("Tests that a disabled audio track in a MediaStream is rendered as silence", {timeout: 200000});
-var aud = document.getElementById("aud");
-t.step(function() {
- navigator.getUserMedia({audio: true}, t.step_func(function (stream) {
- var ctx = new AudioContext();
- var streamSource = ctx.createMediaStreamSource(stream);
- var silenceDetector = ctx.createScriptProcessor(1024);
- var count = 10;
- silenceDetector.onaudioprocess = t.step_func(function (e) {
- var buffer1 = e.inputBuffer.getChannelData(0);
- var buffer2 = e.inputBuffer.getChannelData(1);
- var out = e.outputBuffer.getChannelData(0);
- out = new Float32Array(buffer1);
- for (var i = 0; i < buffer1.length; i++) {
- assert_equals(buffer1[i], 0, "Audio buffer entry #" + i + " in channel 0 is silent");
- }
- for (var i = 0; i < buffer2.length; i++) {
- assert_equals(buffer2[i], 0, "Audio buffer entry #" + i + " in channel 1 is silent");
- }
- count--;
- if (count === 0) {
- silenceDetector.onaudioprocess = null;
- t.done();
- }
- });
- stream.getAudioTracks()[0].enabled = false;
-
- streamSource.connect(silenceDetector);
- silenceDetector.connect(ctx.destination);
- }), function(error) {});
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-MediaElement-disabled-video-is-black.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-MediaElement-disabled-video-is-black.https.html
deleted file mode 100644
index fef3f4f3b..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-MediaElement-disabled-video-is-black.https.html
+++ /dev/null
@@ -1,56 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>A disabled video track is rendered as blackness</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#introduction">
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#mediastreams-as-media-elements">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your video stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that a disabled video track in a
-MediaStream is rendered as blackness.</p>
-<video id="vid"></video>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]' data-prefixed-prototypes='[{"ancestors":["HTMLMediaElement"],"name":"srcObject"}]'></script>
-<script>
-var vid = document.getElementById("vid");
-var cv = document.createElement("canvas");
-var t = async_test("Tests that a disabled video track in a MediaStream is rendered as blackness", {timeout: 10000});
-t.step(function() {
- navigator.getUserMedia(
- {video: true},
- t.step_func(function (stream) {
- var testOncePlaying = function() {
- if (stream.getVideoTracks()[0].enabled) {
- stream.getVideoTracks()[0].enabled = false;
- return;
- }
-
- vid.removeEventListener("timeupdate", testOncePlaying, false);
- cv.width = vid.offsetWidth;
- cv.height = vid.offsetHeight;
- var ctx = cv.getContext("2d");
- ctx.drawImage(vid,0,0);
- var imageData = ctx.getImageData(0, 0, cv.width, cv.height);
- for (var i = 0; i < imageData.data.length; i+=4) {
- assert_equals(imageData.data[i], 0, "No red component in pixel #" + i);
- assert_equals(imageData.data[i + 1], 0, "No green component in pixel #" + i);
- assert_equals(imageData.data[i + 2], 0, "No blue component in pixel #" + i);
- assert_equals(imageData.data[i + 3], 255, "No transparency in pixel #" + i);
- }
- t.done();
- }
- vid.srcObject = stream;
- vid.play();
- vid.addEventListener("timeupdate", t.step_func(testOncePlaying), false);
- }),
- function(error) {});
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-end.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-end.https.html
deleted file mode 100644
index 6b6b72fc0..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-end.https.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>Test that mediastreamtrack are properly ended</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#mediastreamtrack">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your video and audio
-stream, and then revoke that permission.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that the video and audio tracks of
-MediaStream object returned by the success callback in getUserMedia are
-correctly set into inactive state when permission is revoked.</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script>
-<script>
-var t = async_test("Tests that the video MediaStreamTrack objects are properly ended on permission revocation", {timeout: 20000}); // longer timeout since requires user interaction
-t.step(function () {
- navigator.getUserMedia({audio: true,video: true}, t.step_func(function (stream) {
- var vidTrack = stream.getVideoTracks()[0];
- assert_equals(vidTrack.readyState, "live", "The video track object is in live state");
- var audTrack = stream.getAudioTracks()[0];
- assert_equals(audTrack.readyState, "live", "The audio track object is in live state");
- vidTrack.onended = t.step_func(function () {
- assert_equals(vidTrack.readyState, "ended", "Video track has been ended as expected");
- assert_equals(audTrack.readyState, "ended", "Audio track has been ended as expected");
- assert_false(stream.active, "MediaStream has been inactive as expected");
- t.done();
- });
- }), function (error) {}
- );
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-id.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-id.https.html
deleted file mode 100644
index 866b48f94..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-id.https.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>Distinct id for distinct mediastream tracks</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStreamTrack-id">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your audio and video stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that distinct mediastream tracks have distinct ids.</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script>
-<script>
-var t = async_test("Tests that distinct mediastream tracks have distinct ids ", {timeout: 10000});
-t.step(function () {
- navigator.getUserMedia({video: true, audio: true}, t.step_func(gotStream), t.step_func(function(error) {t.assert_unreached("Access to audio and video stream is granted");}));
- function gotStream(stream) {
- assert_not_equals(stream.getVideoTracks()[0], stream.getAudioTracks()[0].id, "audio and video tracks have distinct ids");
- t.done();
- }
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-init.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-init.https.html
deleted file mode 100644
index 3aa12052d..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStreamTrack-init.https.html
+++ /dev/null
@@ -1,73 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>getUserMedia({video:true}) creates a stream with a properly initialized video track</title>
-<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/>
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#idl-def-MediaStreamTrack">
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#life-cycle-and-media-flow">
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStreamTrack-kind">
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStreamTrack-enabled">
-<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStreamTrack-readyState">
-</head>
-<body>
-<p class="instructions">When prompted, accept to share your video stream.</p>
-<h1 class="instructions">Description</h1>
-<p class="instructions">This test checks that the video track of MediaStream
-object returned by the success callback in getUserMedia is correctly initialized.</p>
-
-<div id='log'></div>
-<script src=/resources/testharness.js></script>
-<script src=/resources/testharnessreport.js></script>
-<script src=/resources/WebIDLParser.js></script>
-<script src=/resources/idlharness.js></script>
-<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script>
-<script>
-var t = async_test("Tests that the video MediaStreamTrack objects are properly initialized", {timeout:10000});
-var track = null
-var idl_array = new IdlArray();
-
-idl_array.add_idls("interface EventTarget {\
- void addEventListener(DOMString type, EventListener? callback, optional boolean capture = false);\
- void removeEventListener(DOMString type, EventListener? callback, optional boolean capture = false);\
- boolean dispatchEvent(Event event);\
-};");
-
-idl_array.add_idls("interface MediaStreamTrack : EventTarget {\
- readonly attribute DOMString kind;\
- readonly attribute DOMString id;\
- readonly attribute DOMString label;\
- attribute boolean enabled;\
- readonly attribute boolean muted;\
- attribute EventHandler onmute;\
- attribute EventHandler onunmute;\
- readonly attribute boolean _readonly;\
- readonly attribute boolean remote;\
- readonly attribute MediaStreamTrackState readyState;\
- attribute EventHandler onended;\
- attribute EventHandler onoverconstrained;\
- MediaStreamTrack clone ();\
- void stop ();\
- MediaTrackCapabilities getCapabilities ();\
- MediaTrackConstraints getConstraints ();\
- MediaTrackSettings getSettings ();\
- Promise<void> applyConstraints (optional MediaTrackConstraints constraints);\
-};");
-
-t.step(function () {
- navigator.getUserMedia({video: true}, t.step_func(function (stream) {
- var videoTracks = stream.getVideoTracks();
- assert_equals(videoTracks.length, 1, "There is exactly one video track in the media stream");
- track = videoTracks[0];
- idl_array.add_objects({MediaStreamTrack: ["track"]});
- idl_array.test();
- assert_equals(track.readyState, "live", "The track object is in live state");
- assert_equals(track.kind, "video", "The track object is of video kind");
- // Not clear that this is required by the spec,
- // see https://www.w3.org/Bugs/Public/show_bug.cgi?id=22212
- assert_true(track.enabled, "The track object is enabed");
- t.done();
- }), function (error) {});
-});
-</script>
-</body>
-</html>
diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStreamTrackEvent-constructor.https.html b/testing/web-platform/tests/mediacapture-streams/MediaStreamTrackEvent-constructor.https.html
deleted file mode 100644
index 8f5a543d8..000000000
--- a/testing/web-platform/tests/mediacapture-streams/MediaStreamTrackEvent-constructor.https.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!doctype html>
-<title>MediaStreamTrackEvent constructor</title>
-<link rel="help" href="https://w3c.github.io/mediacapture-main/#mediastreamtrackevent">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script>
-test(function() {
- assert_equals(MediaStreamTrackEvent.length, 2);
- assert_throws(new TypeError, function() {
- new MediaStreamTrackEvent("type");
- });
- assert_throws(new TypeError, function() {
- new MediaStreamTrackEvent("type", null);
- });
- assert_throws(new TypeError, function() {
- new MediaStreamTrackEvent("type", undefined);
- });
-}, "The eventInitDict argument is required");
-
-test(function() {
- assert_throws(new TypeError, function() {
- new MediaStreamTrackEvent("type", {});
- });
- assert_throws(new TypeError, function() {
- new MediaStreamTrackEvent("type", { track: null });
- });
- assert_throws(new TypeError, function() {
- new MediaStreamTrackEvent("type", { track: undefined });
- });
-}, "The eventInitDict's track member is required.");
-
-test(function() {
- // a MediaStreamTrack instance is needed to test, any instance will do.
- var context = new AudioContext();
- var dest = context.createMediaStreamDestination();
- var track = dest.stream.getTracks()[0];
- assert_true(track instanceof MediaStreamTrack);
- var event = new MediaStreamTrackEvent("type", { track: track });
- assert_equals(event.type, "type");
- assert_equals(event.track, track);
-}, "The MediaStreamTrackEvent instance's track attribute is set.");
-</script>
diff --git a/testing/web-platform/tests/mediacapture-streams/OWNERS b/testing/web-platform/tests/mediacapture-streams/OWNERS
deleted file mode 100644
index 2fec44486..000000000
--- a/testing/web-platform/tests/mediacapture-streams/OWNERS
+++ /dev/null
@@ -1,3 +0,0 @@
-@agouaillard
-@alvestrand
-@dontcallmedom