|Summary:||[WML] Running WML tests in random order multiple times exposes subtle bugs|
|Product:||WebKit||Reporter:||Nikolas Zimmermann <zimmermann>|
|Component:||WebCore Misc.||Assignee:||Nikolas Zimmermann <zimmermann>|
|Version:||528+ (Nightly build)|
|OS:||OS X 10.5|
|Bug Depends on:|
Description Nikolas Zimmermann 2009-07-29 04:27:02 PDT
As the summary says running "run-webkit-tests fast/wml http/tests/wml wml --random" exposes some bug: * fast/wml/err-multi-access.wml (related to bug 27721, can't be fixed at the moment, deck access control is broken) -> creates different error positions upon consecutive runs (line 6, line 5, etc) * wml/enter-first-card-with-events.html doesn't work properly on consecutive runs. We have to take special care of detecting the end of the test here -> not resetting the page state was not a good idea, instead it hided a bug that we don't preserve the current history item on clearWMLPageHistory() * Some assertions in removedFromDocument regarding parentNode() fire, upon GC collection at random spots. Don't ASSERT(parent()) there. It was superflous anyway, as we check the return value Fixing the latter problem allows us to simplify WMLTestCase.js again and to run random order testing (almost only fast/wml/err-multi-access.wml left to fix there).
Comment 1 Nikolas Zimmermann 2009-07-29 04:39:24 PDT
Created attachment 33711 [details] Initial patch
Comment 2 Adam Treat 2009-07-29 06:19:37 PDT
Comment on attachment 33711 [details] Initial patch Talked it over with Niko in chat and showed me the backtrace of crashes caused by gc collect in middle of reload triggering the tear down with some elements with parent == 0. Looks good.