forked from mirrors/gecko-dev
Automatic update from web-platform-tests Mark codec interfaces as SecureContext Bug: 1243519 Change-Id: Ib2d77aca4848053408ef0e8a78d95df0c6b9bbaf Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3120330 Commit-Queue: Chrome Cunningham <chcunningham@chromium.org> Auto-Submit: Chrome Cunningham <chcunningham@chromium.org> Reviewed-by: Dale Curtis <dalecurtis@chromium.org> Cr-Commit-Position: refs/heads/main@{#915665} -- wpt-commits: 26f620a206708bc7bd2cd0c7d953f0916c33719b wpt-pr: 30187
64 lines
1.5 KiB
JavaScript
64 lines
1.5 KiB
JavaScript
// META: global=window,dedicatedworker
|
|
// META: script=/webcodecs/utils.js
|
|
|
|
const invalidConfigs = [
|
|
{
|
|
comment: 'Empty codec',
|
|
config: {codec: ''},
|
|
},
|
|
{
|
|
comment: 'Unrecognized codec',
|
|
config: {codec: 'bogus'},
|
|
},
|
|
{
|
|
comment: 'Audio codec',
|
|
config: {codec: 'vorbis'},
|
|
},
|
|
{
|
|
comment: 'Ambiguous codec',
|
|
config: {codec: 'vp9'},
|
|
},
|
|
{
|
|
comment: 'Codec with MIME type',
|
|
config: {codec: 'video/webm; codecs="vp8"'},
|
|
},
|
|
]; // invalidConfigs
|
|
|
|
invalidConfigs.forEach(entry => {
|
|
promise_test(
|
|
t => {
|
|
return promise_rejects_js(
|
|
t, TypeError, VideoDecoder.isConfigSupported(entry.config));
|
|
},
|
|
'Test that VideoDecoder.isConfigSupported() rejects invalid config:' +
|
|
entry.comment);
|
|
});
|
|
|
|
invalidConfigs.forEach(entry => {
|
|
async_test(
|
|
t => {
|
|
let codec = new VideoDecoder(getDefaultCodecInit(t));
|
|
assert_throws_js(TypeError, () => {
|
|
codec.configure(entry.config);
|
|
});
|
|
t.done();
|
|
},
|
|
'Test that VideoDecoder.configure() rejects invalid config:' +
|
|
entry.comment);
|
|
});
|
|
|
|
promise_test(t => {
|
|
// VideoDecoderInit lacks required fields.
|
|
assert_throws_js(TypeError, () => {
|
|
new VideoDecoder({});
|
|
});
|
|
|
|
// VideoDecoderInit has required fields.
|
|
let decoder = new VideoDecoder(getDefaultCodecInit(t));
|
|
|
|
assert_equals(decoder.state, 'unconfigured');
|
|
|
|
decoder.close();
|
|
|
|
return endAfterEventLoopTurn();
|
|
}, 'Test VideoDecoder construction');
|