RESOLVED FIXED 179195
LayoutTest http/tests/security/cross-frame-access-put.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=179195
Summary LayoutTest http/tests/security/cross-frame-access-put.html is a flaky failure
Attachments
Patch (1.89 KB, patch)
2017-11-07 09:54 PST, Chris Dumez
no flags
Alexey Proskuryakov
Comment 1 2017-11-06 17:58:01 PST
It looks like the test pretty much works properly, but dumps the results as a render tree instead of text! Very curious, I wonder if this reproduces locally.
Ryan Haddad
Comment 2 2017-11-07 08:40:27 PST
I can reproduce locally with: run-webkit-tests http/tests/security/cross-frame-access-put.html -fg --iter 10 --no-retry-failure
Chris Dumez
Comment 3 2017-11-07 09:54:36 PST
Chris Dumez
Comment 4 2017-11-07 09:55:38 PST
(In reply to Ryan Haddad from comment #2) > I can reproduce locally with: > run-webkit-tests http/tests/security/cross-frame-access-put.html -fg --iter > 10 --no-retry-failure Thanks for the repro steps Ryan, they worked.
Alexey Proskuryakov
Comment 5 2017-11-07 11:15:42 PST
Comment on attachment 326218 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=326218&action=review > LayoutTests/ChangeLog:9 > + Fix flaky test by calling the testRunner functions as early as possible, not in > + the onload event handler. Why does this matter?
WebKit Commit Bot
Comment 6 2017-11-07 11:29:35 PST
Comment on attachment 326218 [details] Patch Clearing flags on attachment: 326218 Committed r224538: <https://trac.webkit.org/changeset/224538>
WebKit Commit Bot
Comment 7 2017-11-07 11:29:36 PST
All reviewed patches have been landed. Closing bug.
Chris Dumez
Comment 8 2017-11-07 11:58:11 PST
Comment on attachment 326218 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=326218&action=review >> LayoutTests/ChangeLog:9 >> + the onload event handler. > > Why does this matter? Because the test can start running in the subframe *before* the onload event handler gets called in the top frame.
Alexey Proskuryakov
Comment 9 2017-11-07 13:58:23 PST
> Because the test can start running in the subframe *before* the onload event handler gets called in the top frame. It definitely can, but how does this translate into the symptom? The test should still switch to text mode before any of the content is dumped in the end.
Chris Dumez
Comment 10 2017-11-07 14:04:05 PST
(In reply to Alexey Proskuryakov from comment #9) > > Because the test can start running in the subframe *before* the onload event handler gets called in the top frame. > > It definitely can, but how does this translate into the symptom? The test > should still switch to text mode before any of the content is dumped in the > end. The test starts running in the subframe, then the subframes starts the test in the topFrame via a postMessage(). As far as I can tell, nothing prevented the test in the top frame to finish *before* the onload event handler was called in the main frame. Therefore, the test *could* finish *before* calling testRunner.dumpAsText() is called.
Alexey Proskuryakov
Comment 11 2017-11-07 14:25:41 PST
Any test that doesn't call waitUntilDone() finishes after onload is dispatched, so I still don't see how anything could go wrong. I suspect that there is a deeper root cause, something with incorrect sequence of load event and API callbacks.
Radar WebKit Bug Importer
Comment 12 2017-11-15 12:26:25 PST
Note You need to log in before you can comment on or make changes to this bug.