Bug 309529
| Summary: | [macOS release] 3x imported/w3c/web-platform-tests/editing/other/typing-around-link-element-at-collapsed-selection.tentative.html are flaky text failures | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Diego De La Toba <d_delatoba> |
| Component: | New Bugs | Assignee: | Nobody <webkit-unassigned> |
| Status: | NEW | ||
| Severity: | Normal | CC: | webkit-bot-watchers-bugzilla, webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Diego De La Toba
imported/w3c/web-platform-tests/editing/other/typing-around-link-element-at-collapsed-selection.tentative.html?target=DesignMode&child=b
imported/w3c/web-platform-tests/editing/other/typing-around-link-element-at-collapsed-selection.tentative.html?target=DesignMode&parent=b
imported/w3c/web-platform-tests/editing/other/typing-around-link-element-at-collapsed-selection.tentative.html?target=DesignMode&parent=b&child=i
are flaky text failures on macOS release arm64.
HISTORY:
https://results.webkit.org/?suite=layout-tests&suite=layout-tests&suite=layout-tests&test=imported%2Fw3c%2Fweb-platform-tests%2Fediting%2Fother%2Ftyping-around-link-element-at-collapsed-selection.tentative.html%3Ftarget%3DDesignMode%26parent%3Db%26child%3Di&test=imported%2Fw3c%2Fweb-platform-tests%2Fediting%2Fother%2Ftyping-around-link-element-at-collapsed-selection.tentative.html%3Ftarget%3DDesignMode%26parent%3Db&test=imported%2Fw3c%2Fweb-platform-tests%2Fediting%2Fother%2Ftyping-around-link-element-at-collapsed-selection.tentative.html%3Ftarget%3DDesignMode%26child%3Db
DIFF:
--- /Volumes/Data/worker/Apple-Tahoe-Release-AppleSilicon-WK2-Tests/build/layout-test-results/imported/w3c/web-platform-tests/editing/other/typing-around-link-element-at-collapsed-selection.tentative_target=DesignMode&child=b-expected.txt
+++ /Volumes/Data/worker/Apple-Tahoe-Release-AppleSilicon-WK2-Tests/build/layout-test-results/imported/w3c/web-platform-tests/editing/other/typing-around-link-element-at-collapsed-selection.tentative_target=DesignMode&child=b-actual.txt
@@ -1,7 +1,7 @@
PASS Testing inserting content around link element
-PASS Inserting "XY" after setting caret position to middle of a link containing <b> (Selection.collapse) in <p><a href="about:blank"><b>[]abc</b></a></p>
+FAIL Inserting "XY" after setting caret position to middle of a link containing <b> (Selection.collapse) in <p><a href="about:blank"><b>[]abc</b></a></p> assert_in_array: value "<p><a href=\"about:blank\"><b>abYc</b></a></p>" not in array ["<p><a href=\"about:blank\"><b>abXYc</b></a></p>", "<p><a href=\"about:blank\"><b>abXYc</b></a><br></p>"]
PASS Inserting "XY" after setting caret position to middle of a link containing <b> (Selection.addRange) in <p><a href="about:blank"><b>[]abc</b></a></p>
PASS Inserting "XY" after setting caret position to start of a link containing <b> (Selection.collapse) in <p><a href="about:blank"><b>ab[]c</b></a></p>
PASS Inserting "XY" after setting caret position to start of a link containing <b> (Selection.addRange) in <p><a href="about:blank"><b>ab[]c</b></a></p>
DIFF URL:
https://build.webkit.org/results/Apple-Sequoia-Release-AppleSilicon-WK2-Tests/308789@main%20(7201)/imported/w3c/web-platform-tests/editing/other/typing-around-link-element-at-collapsed-selection.tentative_target=DesignMode&parent=b&child=i-pretty-diff.html
https://build.webkit.org/results/Apple-Tahoe-Release-AppleSilicon-WK2-Tests/308123@main%20(1943)/imported/w3c/web-platform-tests/editing/other/typing-around-link-element-at-collapsed-selection.tentative_target=DesignMode&parent=b-pretty-diff.html
https://build.webkit.org/results/Apple-Tahoe-Release-AppleSilicon-WK2-Tests/308377@main%20(2047)/imported/w3c/web-platform-tests/editing/other/typing-around-link-element-at-collapsed-selection.tentative_target=DesignMode&child=b-pretty-diff.html
REPRODUCTION:
I was able to reproduce this on macOS Tahoe 26.2 release ToT with the following:
run-webkit-tests --no-build --no-retry --no-show-results --expect-pass --iterations=500 --force --release imported/w3c/web-platform-tests/editing/other/typing-around-link-element-at-collapsed-selection.tentative.html
I am going to mark expectations as pass fail while this pends investigation.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/172132980>
Diego De La Toba
Test gardening pull request: https://github.com/WebKit/WebKit/pull/60227
EWS
Test gardening commit 308949@main (b34ab0c79acb): <https://commits.webkit.org/308949@main>
Reviewed commits have been landed. Closing PR #60227 and removing active labels.
Diego De La Toba
What the test expects (sequential, deterministic):
await sendKey("X"); // X is in DOM when this resolves
await sendKey("Y"); // Y is in DOM when this resolves
Result: "XY" - always
What WebKit does:
await sendKey("X"); // Promise resolves when event is DISPATCHED
await sendKey("Y"); // Sent before X is processed
Result: "XY" or "Y" or "YX" - nondeterministic
I would reasonably assume sendKey() should fully reflected in the DOM before the next key is sent. Otherwise, writing deterministic tests becomes impossible. There is a workaround in the test which adds explicit synchronization await waitForFrame(utils.window) but this seems like it would mask a legitimate WebKit implementation issue.