I have a WIP patch[1] that changes layout tests running in single-threaded mode to actually run through the update phases in the compositor, which is closer to production behaviour.
http/tests/devtools/sources/debugger-async/async-callstack.js
async-callstack-scripted-scroll.js is running into some debug assertions as a result. IIUC, the test requests a rAF, then inside the rAF it uses the debugger to create a nested message loop which issues a second rAF. So the second frame starts in cc before the first one finishes, which is obviously unexpected. I'm not sure how exactly to modify this test since if my understanding is correct, its breaking a pretty fundamental assumption. This would currently work because animation frames run blink's lifecycle phases but not the cc pipeline.
chenwilliam@, could you verify that the above is correct?
[1]: https://chromium-review.googlesource.com/c/chromium/src/+/900205
Comment 1 by khushals...@chromium.org
, Feb 9 2018