Closed Bug 1706556 Opened 5 years ago Closed 5 years ago

[wpt-sync] Sync PR 28613 - [WebCodecs] Fix WPT tests for reset during flush.

Categories

(Testing :: web-platform-tests, task, P4)

task

Tracking

(firefox90 fixed)

RESOLVED FIXED
90 Branch
Tracking Status
firefox90 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 28613 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/28613
Details from upstream follow.

b'Dale Curtis <dalecurtis@chromium.org>' wrote:

[WebCodecs] Fix WPT tests for reset during flush.

The previous test didn't actually expose the desired issue since
flush() was still pending when reset() occurs. Resulting in the
flush() being cancelled before it started executing.

Instead wait for the first frame before queueing the flush to
ensure there are no other pending operations.

R=eugene

Fixed: 1200768
Change-Id: I8a68ef608aa5565f9c86f8c004c292298d30ef0d
Reviewed-on: https://chromium-review.googlesource.com/2841756
WPT-Export-Revision: 5696e3b5dbcf4d16d9553e714c97b274146b57d1

PR 28613 applied with additional changes from upstream: da61cc0f2d1095b5884bc2880f4c0f5fe530013c, a6a7c84620a5388cfce27fb6f1eab6fad716fdde, 48d3f81aaa869cfeb088cec66b50b513319bf2ec

CI Results

Ran 15 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 4 tests and 32 subtests

Status Summary

Firefox

OK : 4
FAIL: 102

Chrome

OK : 4
PASS: 86
FAIL: 16

Safari

OK : 4
FAIL: 102

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

/webcodecs/audio-decoder.any.html
Test that AudioDecoder.isConfigSupported() rejects invalid config:Emtpy codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.isConfigSupported() rejects invalid config:Unrecognized codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.isConfigSupported() rejects invalid config:Video codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.isConfigSupported() rejects invalid config:Ambiguous codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.isConfigSupported() rejects invalid config:Codec with MIME type: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.configure() rejects invalid config:Emtpy codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.configure() rejects invalid config:Unrecognized codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.configure() rejects invalid config:Video codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.configure() rejects invalid config:Ambiguous codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.configure() rejects invalid config:Codec with MIME type: FAIL (Chrome: PASS, Safari: FAIL)
Test AudioDecoder.isConfigSupported() with a valid config: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.isConfigSupported() returns a parsed configuration: FAIL (Chrome: PASS, Safari: FAIL)
Test AudioDecoder construction: FAIL (Chrome: PASS, Safari: FAIL)
Test AudioDecoder.configure(): FAIL (Chrome: PASS, Safari: FAIL)
Verify closed AudioDecoder operations: FAIL (Chrome: PASS, Safari: FAIL)
Verify unconfigured AudioDecoder operations: FAIL (Chrome: PASS, Safari: FAIL)
Test Opus decoding: FAIL (Chrome: PASS, Safari: FAIL)
Test decoding after flush.: FAIL (Chrome: FAIL, Safari: FAIL)
Test reset during flush.: FAIL (Chrome: PASS, Safari: FAIL)
/webcodecs/audio-decoder.any.worker.html
Test that AudioDecoder.isConfigSupported() rejects invalid config:Emtpy codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.isConfigSupported() rejects invalid config:Unrecognized codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.isConfigSupported() rejects invalid config:Video codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.isConfigSupported() rejects invalid config:Ambiguous codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.isConfigSupported() rejects invalid config:Codec with MIME type: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.configure() rejects invalid config:Emtpy codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.configure() rejects invalid config:Unrecognized codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.configure() rejects invalid config:Video codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.configure() rejects invalid config:Ambiguous codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.configure() rejects invalid config:Codec with MIME type: FAIL (Chrome: PASS, Safari: FAIL)
Test AudioDecoder.isConfigSupported() with a valid config: FAIL (Chrome: PASS, Safari: FAIL)
Test that AudioDecoder.isConfigSupported() returns a parsed configuration: FAIL (Chrome: PASS, Safari: FAIL)
Test AudioDecoder construction: FAIL (Chrome: PASS, Safari: FAIL)
Test AudioDecoder.configure(): FAIL (Chrome: PASS, Safari: FAIL)
Verify closed AudioDecoder operations: FAIL (Chrome: PASS, Safari: FAIL)
Verify unconfigured AudioDecoder operations: FAIL (Chrome: PASS, Safari: FAIL)
Test Opus decoding: FAIL (Chrome: PASS, Safari: FAIL)
Test decoding after flush.: FAIL (Chrome: FAIL, Safari: FAIL)
Test reset during flush.: FAIL (Chrome: PASS, Safari: FAIL)
/webcodecs/video-decoder.any.html
Test that VideoDecoder.isConfigSupported() rejects invalid config:Emtpy codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Unrecognized codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Audio codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Ambiguous codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Codec with MIME type: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Zero coded size: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Way out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Invalid display size: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Emtpy codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Unrecognized codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Audio codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Ambiguous codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Codec with MIME type: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Zero coded size: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Way out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Invalid display size: FAIL (Chrome: PASS, Safari: FAIL)
Test VideoDecoder.isConfigSupported() with minimal valid config: FAIL (Chrome: PASS, Safari: FAIL)
Test VideoDecoder.isConfigSupported() with valid expanded config: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() returns a parsed configuration: FAIL (Chrome: FAIL, Safari: FAIL)
Test VideoDecoder construction: FAIL (Chrome: PASS, Safari: FAIL)
Test VideoDecoder.configure() with various codec strings: FAIL (Chrome: PASS, Safari: FAIL)
Decode VP9: FAIL (Chrome: FAIL, Safari: FAIL)
Verify reset() suppresses output and rejects flush: FAIL (Chrome: PASS, Safari: FAIL)
Verify closed VideoDecoder operations: FAIL (Chrome: PASS, Safari: FAIL)
Verify unconfigured VideoDecoder operations: FAIL (Chrome: PASS, Safari: FAIL)
Decode corrupt VP9 frame: FAIL (Chrome: PASS, Safari: FAIL)
Decode empty VP9 frame: FAIL (Chrome: PASS, Safari: FAIL)
Close while decoding corrupt VP9 frame: FAIL (Chrome: PASS, Safari: FAIL)
Test decoding after flush.: FAIL (Chrome: FAIL, Safari: FAIL)
Test reset during flush.: FAIL (Chrome: PASS, Safari: FAIL)
/webcodecs/video-decoder.any.worker.html
Test that VideoDecoder.isConfigSupported() rejects invalid config:Emtpy codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Unrecognized codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Audio codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Ambiguous codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Codec with MIME type: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Zero coded size: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Way out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() rejects invalid config:Invalid display size: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Emtpy codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Unrecognized codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Audio codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Ambiguous codec: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Codec with MIME type: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Zero coded size: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Way out of bounds visibleRegion: FAIL (Chrome: FAIL, Safari: FAIL)
Test that VideoDecoder.configure() rejects invalid config:Invalid display size: FAIL (Chrome: PASS, Safari: FAIL)
Test VideoDecoder.isConfigSupported() with minimal valid config: FAIL (Chrome: PASS, Safari: FAIL)
Test VideoDecoder.isConfigSupported() with valid expanded config: FAIL (Chrome: PASS, Safari: FAIL)
Test that VideoDecoder.isConfigSupported() returns a parsed configuration: FAIL (Chrome: FAIL, Safari: FAIL)
Test VideoDecoder construction: FAIL (Chrome: PASS, Safari: FAIL)
Test VideoDecoder.configure() with various codec strings: FAIL (Chrome: PASS, Safari: FAIL)
Decode VP9: FAIL (Chrome: FAIL, Safari: FAIL)
Verify reset() suppresses output and rejects flush: FAIL (Chrome: PASS, Safari: FAIL)
Verify closed VideoDecoder operations: FAIL (Chrome: PASS, Safari: FAIL)
Verify unconfigured VideoDecoder operations: FAIL (Chrome: PASS, Safari: FAIL)
Decode corrupt VP9 frame: FAIL (Chrome: PASS, Safari: FAIL)
Decode empty VP9 frame: FAIL (Chrome: PASS, Safari: FAIL)
Close while decoding corrupt VP9 frame: FAIL (Chrome: PASS, Safari: FAIL)
Test decoding after flush.: FAIL (Chrome: FAIL, Safari: FAIL)
Test reset during flush.: FAIL (Chrome: PASS, Safari: FAIL)

Pushed by wptsync@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/dacadc53cbf6 [wpt PR 28613] - [WebCodecs] Fix WPT tests for reset during flush., a=testonly https://hg.mozilla.org/integration/autoland/rev/921c6ad93c82 [wpt PR 28613] - Update wpt metadata, a=testonly
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → 90 Branch
You need to log in before you can comment on or make changes to this bug.