Closed Bug 1780868 Opened 2 years ago Closed 2 years ago

[wpt-sync] Sync PR 34946 - Fix interactionid-tap.html flaky test memory leak

Categories

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

task

Tracking

(firefox105 fixed)

RESOLVED FIXED
105 Branch
Tracking Status
firefox105 --- fixed

People

(Reporter: mozilla.org, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

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

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

Aoyuan Zuo <zuoaoyuan@chromium.org> wrote:

Fix interactionid-tap.html flaky test memory leak

addListenersAndTap() is an async func that wasn't resolved when
t.done() happened. So refactored interactionid-tap.html from a async_test to promise_test and make sure all pending promises are settled before finishing the test. Also added a few returns to event-timing-test-utils.js to make sure the async chain is well defined.
Same issue applies to interactionid-click.html. Though we didn't see
any memory leak from any test result, it might just because it uses
test_driver.click() which might has less work to finish after
dispatching. Potentially the race condition is still possible. So
I added .then() in interactionid-click.html to settle pending promises to eliminating race conditions from happening.

Bug:1338420
Change-Id: Id33ef7d420807d0687f32b810ff820866c3b9507

Reviewed-on: https://chromium-review.googlesource.com/3780795
WPT-Export-Revision: 40b3bfacea56d32ca36eb01729d9bacca610ab03

Whiteboard: [wptsync downstream] → [wptsync downstream error]
Whiteboard: [wptsync downstream error] → [wptsync downstream]

CI Results

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

Total 39 tests and 1 subtests

Status Summary

Firefox

OK : 36[Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-windows10-32-2004-qr-debug, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt] 37[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-windows10-32-2004-qr-opt] 38[GitHub]
PASS : 26
FAIL : 10[Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-windows10-32-2004-qr-debug, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt] 11[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-windows10-32-2004-qr-opt] 12[GitHub]
TIMEOUT: 2

Chrome

OK : 39
PASS : 39

Safari

OK : 39
FAIL : 39

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

Firefox-only Failures

  • /event-timing/interactionid-tap.html [wpt.fyi]: OK [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-windows10-32-2004-qr-opt], TIMEOUT [Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-windows10-32-2004-qr-debug, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt, GitHub]

New Tests That Don't Pass

  • /layout-instability/input-timestamp.html [wpt.fyi]: OK [GitHub], SKIP [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-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: OK)
    • Layout shift right after user input is observable via PerformanceObserver.: FAIL (Chrome: PASS, Safari: FAIL)
  • /layout-instability/recent-input.html [wpt.fyi]: OK [GitHub], SKIP [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-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: OK)
    • Layout shift right after user input is observable via PerformanceObserver.: FAIL (Chrome: PASS, Safari: FAIL)
  • /event-timing/crossiframe.html [wpt.fyi]
    • Event Timing: entries should only be observable by its own frame.: FAIL (Chrome: PASS, Safari: FAIL)
  • /event-timing/disconnect-target.html [wpt.fyi]
    • Event Timing: when target is disconnected, entry.target returns null.: FAIL (Chrome: PASS, Safari: FAIL)
  • /event-timing/event-retarget.html [wpt.fyi]
    • Event Timing: target reports the last Event Target, i.e. nothing from shadow DOM.: FAIL (Chrome: PASS, Safari: FAIL)
  • /event-timing/first-input-interactionid-click.html [wpt.fyi]
    • The interactionId of the first input entry should match the same pointerdown entry of event timing when click.: FAIL (Chrome: PASS, Safari: FAIL)
  • /event-timing/interactionid-click.html [wpt.fyi]
    • Event Timing: compare event timing interactionId.: FAIL (Chrome: PASS, Safari: FAIL)
  • /event-timing/interactionid-press-key-as-input.html [wpt.fyi]
    • Event Timing: compare event timing interactionId for key press as input.: FAIL (Chrome: PASS, Safari: FAIL)
  • /event-timing/interactionid-press-key-no-effect.html [wpt.fyi]
    • Event Timing: compare event timing interactionId for key press with no effect.: FAIL (Chrome: PASS, Safari: FAIL)
  • /event-timing/interactionid-tap.html [wpt.fyi]: OK [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-windows10-32-2004-qr-opt], TIMEOUT [Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-windows10-32-2004-qr-debug, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt, GitHub] (Chrome: OK, Safari: OK)
    • Event Timing: compare event timing interactionId for tap.: FAIL [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-windows10-32-2004-qr-opt], TIMEOUT [Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-windows10-32-2004-qr-debug, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt, GitHub] (Chrome: PASS, Safari: FAIL)
  • /event-timing/only-observe-firstInput.html [wpt.fyi]
    • Event Timing: check first-input for a PerformanceObserver observing only first-input.: FAIL (Chrome: PASS, Safari: FAIL)
  • /event-timing/programmatic-click-not-observed.html [wpt.fyi]
    • Event Timing: events from programmatic click are not observed: FAIL (Chrome: PASS, Safari: FAIL)
  • /event-timing/retrieve-firstInput.html [wpt.fyi]
    • Event Timing: check first-input after onload, observer, click, click.: FAIL (Chrome: PASS, Safari: FAIL)

Tests Disabled in Gecko Infrastructure

  • /layout-instability/input-timestamp.html [wpt.fyi]: OK [GitHub], SKIP [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-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: OK)
  • /layout-instability/recent-input.html [wpt.fyi]: OK [GitHub], SKIP [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-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: OK)
Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/f523e3dfce0d
[wpt PR 34946] - Fix interactionid-tap.html flaky test memory leak, a=testonly
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 105 Branch
You need to log in before you can comment on or make changes to this bug.