tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit bc25ea10e67818e1927e20961551178d12ac8f1d
parent df89bb1185976b0a05196a19500f550aa261e27f
Author: Andreas Pehrson <apehrson@mozilla.com>
Date:   Tue,  7 Oct 2025 16:29:33 +0000

Bug 1991492 - Add WPT for impossible constraints in gDM-applyConstraints. r=jib

Differential Revision: https://phabricator.services.mozilla.com/D267751

Diffstat:
Mtesting/web-platform/tests/screen-capture/getdisplaymedia.https.html | 24++++++++++++++++++++++++
1 file changed, 24 insertions(+), 0 deletions(-)

diff --git a/testing/web-platform/tests/screen-capture/getdisplaymedia.https.html b/testing/web-platform/tests/screen-capture/getdisplaymedia.https.html @@ -164,6 +164,30 @@ promise_test(async t => { assert_unreached('getDisplayMedia should have failed'); }, `getDisplayMedia(${j(constraints)}) must fail with OverconstrainedError`)); +[ + {width: {max: 0}}, + {height: {max: 0}}, + {frameRate: {max: 0}}, + {width: {max: -1}}, + {height: {max: -1}}, + {frameRate: {max: -1}}, + {width: {min: 100, max: 10}}, + {height: {min: 100, max: 10}}, + {frameRate: {min: 100, max: 10}}, +].forEach(constraints => promise_test(async t => { + const stream = await getDisplayMedia(); + t.add_cleanup(() => stopTracks(stream)); + const [track] = stream.getTracks(); + try { + await track.applyConstraints(constraints); + } catch (err) { + assert_equals(err.name, 'OverconstrainedError', err.message); + assert_equals(err.constraint, Object.keys(constraints)[0], "Constraint is set"); + return; + } + assert_unreached('applyConstraints hould have failed'); +}, `applyConstraints(${j(constraints)}) for display media must fail with OverconstrainedError`)); + // Content shell picks a fake desktop device by default. promise_test(async t => { const stream = await getDisplayMedia({video: true});