Skip to content

Commit

Permalink
Move getDisplayMedia to MediaDevices
Browse files Browse the repository at this point in the history
Following w3c/mediacapture-screen-share#86

Bug: 326740
Change-Id: Ifb65a33a7f998563640d9f508d26d91ecb16c32f
  • Loading branch information
uysalere authored and chromium-wpt-export-bot committed Nov 2, 2018
1 parent 843887c commit 7b00cde
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 29 deletions.
57 changes: 29 additions & 28 deletions screen-capture/getdisplaymedia.https.html
Expand Up @@ -7,8 +7,8 @@
'use strict';

promise_test(async t => {
assert_idl_attribute(navigator, 'getDisplayMedia');
const stream = await navigator.getDisplayMedia({video: true});
assert_idl_attribute(navigator.mediaDevices, 'getDisplayMedia');
const stream = await navigator.mediaDevices.getDisplayMedia({video: true});
const [track] = stream.getTracks();
t.add_cleanup(() => track.stop());
assert_equals(stream.getTracks().length, 1);
Expand All @@ -22,8 +22,8 @@
// Note that this results in some non-intuitive cases returning a video track,
// i.e. {video: false}.
promise_test(async t => {
assert_idl_attribute(navigator, 'getDisplayMedia');
const stream = await navigator.getDisplayMedia();
assert_idl_attribute(navigator.mediaDevices, 'getDisplayMedia');
const stream = await navigator.mediaDevices.getDisplayMedia();
const [track] = stream.getTracks();
t.add_cleanup(() => track.stop());
assert_equals(stream.getTracks().length, 1);
Expand All @@ -32,8 +32,8 @@
}, 'getDisplayMedia() with no constraints');

promise_test(async t => {
assert_idl_attribute(navigator, 'getDisplayMedia');
const stream = await navigator.getDisplayMedia({video: false});
assert_idl_attribute(navigator.mediaDevices, 'getDisplayMedia');
const stream = await navigator.mediaDevices.getDisplayMedia({video: false});
const [track] = stream.getTracks();
t.add_cleanup(() => track.stop());
assert_equals(stream.getTracks().length, 1);
Expand All @@ -42,8 +42,8 @@
}, 'getDisplayMedia() with video false');

promise_test(async t => {
assert_idl_attribute(navigator, 'getDisplayMedia');
const stream = await navigator.getDisplayMedia({audio: false});
assert_idl_attribute(navigator.mediaDevices, 'getDisplayMedia');
const stream = await navigator.mediaDevices.getDisplayMedia({audio: false});
const [track] = stream.getTracks();
t.add_cleanup(() => track.stop());
assert_equals(stream.getTracks().length, 1);
Expand All @@ -52,8 +52,8 @@
}, 'getDisplayMedia() with audio false');

promise_test(async t => {
assert_idl_attribute(navigator, 'getDisplayMedia');
const stream = await navigator.getDisplayMedia({audio: true});
assert_idl_attribute(navigator.mediaDevices, 'getDisplayMedia');
const stream = await navigator.mediaDevices.getDisplayMedia({audio: true});
const [track] = stream.getTracks();
t.add_cleanup(() => track.stop());
assert_equals(stream.getTracks().length, 1);
Expand All @@ -62,10 +62,10 @@
}, 'getDisplayMedia() with audio true');

promise_test(async t => {
assert_idl_attribute(navigator, 'getDisplayMedia');
assert_idl_attribute(navigator.mediaDevices, 'getDisplayMedia');
try {
const stream =
await navigator.getDisplayMedia({video: {advanced: [{zoom: 1}]}});
const stream = await navigator.mediaDevices.getDisplayMedia(
{video: {advanced: [{zoom: 1}]}});
} catch (err) {
assert_equals(err.name, 'TypeError');
return;
Expand All @@ -74,10 +74,10 @@
}, 'getDisplayMedia() with advanced constraint');

promise_test(async t => {
assert_idl_attribute(navigator, 'getDisplayMedia');
assert_idl_attribute(navigator.mediaDevices, 'getDisplayMedia');
try {
const stream =
await navigator.getDisplayMedia({video: {width: {min: 360}}});
const stream = await navigator.mediaDevices.getDisplayMedia(
{video: {width: {min: 360}}});
} catch (err) {
assert_equals(err.name, 'TypeError');
return;
Expand All @@ -86,10 +86,10 @@
}, 'getDisplayMedia() with min constraint');

promise_test(async t => {
assert_idl_attribute(navigator, 'getDisplayMedia');
assert_idl_attribute(navigator.mediaDevices, 'getDisplayMedia');
try {
const stream =
await navigator.getDisplayMedia({video: {width: {exact: 360}}});
const stream = await navigator.mediaDevices.getDisplayMedia(
{video: {width: {exact: 360}}});
} catch (err) {
assert_equals(err.name, 'TypeError');
return;
Expand All @@ -98,10 +98,10 @@
}, 'getDisplayMedia() with exact constraint');

promise_test(async t => {
assert_idl_attribute(navigator, 'getDisplayMedia');
assert_idl_attribute(navigator.mediaDevices, 'getDisplayMedia');
const maxWidth = 360;
const stream =
await navigator.getDisplayMedia({video: {width: {max: maxWidth}}});
const stream = await navigator.mediaDevices.getDisplayMedia(
{video: {width: {max: maxWidth}}});
const [track] = stream.getTracks();
t.add_cleanup(() => track.stop());
assert_equals(stream.getVideoTracks().length, 1);
Expand All @@ -111,10 +111,10 @@
}, 'getDisplayMedia() with max constraint');

promise_test(async t => {
assert_idl_attribute(navigator, 'getDisplayMedia');
assert_idl_attribute(navigator.mediaDevices, 'getDisplayMedia');
const maxWidth = 360;
const maxFrameRate = 4;
const stream = await navigator.getDisplayMedia(
const stream = await navigator.mediaDevices.getDisplayMedia(
{video: {width: {max: maxWidth}, frameRate: {max: maxFrameRate}}});
const [track] = stream.getTracks();
t.add_cleanup(() => track.stop());
Expand All @@ -126,9 +126,10 @@
}, 'getDisplayMedia() with constraints applied');

promise_test(async t => {
assert_idl_attribute(navigator, 'getDisplayMedia');
assert_idl_attribute(navigator.mediaDevices, 'getDisplayMedia');
try {
const stream = await navigator.getDisplayMedia({video: {width: {max: 0}}});
const stream = await navigator.mediaDevices.getDisplayMedia(
{video: {width: {max: 0}}});
} catch (err) {
assert_equals(err.name, 'OverconstrainedError');
return;
Expand All @@ -138,8 +139,8 @@

// Content shell picks a fake desktop device by default.
promise_test(async t => {
assert_idl_attribute(navigator, 'getDisplayMedia');
const stream = await navigator.getDisplayMedia({video: true});
assert_idl_attribute(navigator.mediaDevices, 'getDisplayMedia');
const stream = await navigator.mediaDevices.getDisplayMedia({video: true});
const [track] = stream.getTracks();
t.add_cleanup(() => track.stop());
assert_equals(stream.getVideoTracks().length, 1);
Expand Down
2 changes: 1 addition & 1 deletion screen-capture/idlharness.window.js
Expand Up @@ -10,7 +10,7 @@ idl_test(
['mediacapture-streams', 'html'],
idl_array => {
idl_array.add_objects({
Navigator: ['navigator'],
MediaDevices: ['navigator.mediaDevices'],
});
}
);

0 comments on commit 7b00cde

Please sign in to comment.