Closed Bug 1735754 Opened 3 years ago Closed 3 years ago

[wpt-sync] Sync PR 31232 - Make the higher-order comparisons in the structured clone tests `async`

Categories

(Core :: DOM: Core & HTML, task, P4)

task

Tracking

()

RESOLVED FIXED
95 Branch
Tracking Status
firefox95 --- fixed

People

(Reporter: mozilla.org, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

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

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

Andreu Botella <abb@randomunok.com> wrote:

Make the higher-order comparisons in the structured clone tests async

In the structured clone battery of tests, the callback parameter to check can be an async function, and its return value is awaited. However, comparison functions which might be async can be passed to the higher-order comparison function enumerate_props, whose return value is in turn passed to the higher-order functions compare_Array or compare_Object.

Currently, the returned function from these higher-order comparison functions is sync and simply calls the HOF's callback. This means that, if the callback is async (like compare_Blob is), its comparison might not be done by the time the test finishes, and any errors and assertion failures in the comparison will count as errors of the test file, rather than of the specific subtest.

This change makes the function returned from enumerate_props, compare_Array and compare_Object async and changes them to await the return value of their callback. It also makes compare_File await for the return value of compare_Blob.

Component: web-platform-tests → DOM: Core & HTML
Product: Testing → Core

CI Results

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

Total 9 tests and 130 subtests

Status Summary

Firefox

OK : 8[Gecko-windows10-32-2004-qr-debug, Gecko-windows10-32-2004-qr-opt, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt] 9[Gecko-android-em-7.0-x86_64-lite-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview, Gecko-android-em-7.0-x86_64-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-qr-opt-geckoview, Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-linux1804-64-tsan-qr-opt, GitHub]
PASS : 972[Gecko-windows10-32-2004-qr-debug, Gecko-windows10-32-2004-qr-opt, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt] 1101[Gecko-android-em-7.0-x86_64-lite-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview, Gecko-android-em-7.0-x86_64-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-qr-opt-geckoview, Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-linux1804-64-tsan-qr-opt, GitHub]
PRECONDITION_FAILED: 8[Gecko-windows10-32-2004-qr-debug, Gecko-windows10-32-2004-qr-opt, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt] 9[Gecko-android-em-7.0-x86_64-lite-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview, Gecko-android-em-7.0-x86_64-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-qr-opt-geckoview, Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-linux1804-64-tsan-qr-opt, GitHub]

Chrome

OK : 9
PASS : 858
FAIL : 252

Safari

OK : 7
PASS : 580
FAIL : 280
PRECONDITION_FAILED: 5
ERROR : 2

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

/html/infrastructure/safe-passing-of-structured-data/messagechannel.any.sharedworker.html
A subclass instance will be received as its closest transferable superclass: PRECONDITION_FAILED (Chrome: PASS)
/html/infrastructure/safe-passing-of-structured-data/messagechannel.any.worker.html
A subclass instance will be received as its closest transferable superclass: PRECONDITION_FAILED (Chrome: PASS, Safari: PRECONDITION_FAILED)
/html/infrastructure/safe-passing-of-structured-data/messagechannel.any.html
A subclass instance will be received as its closest transferable superclass: PRECONDITION_FAILED (Chrome: PASS, Safari: PRECONDITION_FAILED)
/html/infrastructure/safe-passing-of-structured-data/messagechannel.any.serviceworker.html
A subclass instance will be received as its closest transferable superclass: PRECONDITION_FAILED (Chrome: PASS, Safari: PRECONDITION_FAILED)
/html/infrastructure/safe-passing-of-structured-data/window-postmessage.window.html
A subclass instance will be received as its closest transferable superclass: PRECONDITION_FAILED (Chrome: PASS, Safari: PRECONDITION_FAILED)
/html/webappapis/structured-clone/structured-clone.any.html
A subclass instance will be received as its closest transferable superclass: PRECONDITION_FAILED (Chrome: FAIL, Safari: FAIL)
/html/webappapis/structured-clone/structured-clone.any.worker.html
A subclass instance will be received as its closest transferable superclass: PRECONDITION_FAILED (Chrome: FAIL, Safari: FAIL)
/workers/semantics/structured-clone/dedicated.html
A subclass instance will be received as its closest transferable superclass: PRECONDITION_FAILED (Chrome: PASS, Safari: PRECONDITION_FAILED)
/workers/semantics/structured-clone/shared.html: OK [Gecko-android-em-7.0-x86_64-lite-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview, Gecko-android-em-7.0-x86_64-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-qr-opt-geckoview, Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-linux1804-64-tsan-qr-opt, GitHub], SKIP [Gecko-windows10-32-2004-qr-debug, Gecko-windows10-32-2004-qr-opt, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt] (Chrome: OK, Safari: ERROR)
A subclass instance will be received as its closest transferable superclass: PRECONDITION_FAILED (Chrome: PASS)

Tests Disabled in Gecko Infrastructure

/workers/semantics/structured-clone/shared.html: OK [Gecko-android-em-7.0-x86_64-lite-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview, Gecko-android-em-7.0-x86_64-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-qr-opt-geckoview, Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-linux1804-64-tsan-qr-opt, GitHub], SKIP [Gecko-windows10-32-2004-qr-debug, Gecko-windows10-32-2004-qr-opt, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt] (Chrome: OK, Safari: ERROR)

Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/145382b4da3f
[wpt PR 31232] - Make the higher-order comparisons in the structured clone tests `async`, a=testonly
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 95 Branch
You need to log in before you can comment on or make changes to this bug.